mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 12:07:45 +00:00
![]() With 6 bits of precision, the maximum triangle coordinate we can handle is sqrt(2^31 / (1 << 6)^2) = ~724. Rendering to a target of 800x600 or higher quickly becomes a mess because of integer overflow. By reducing the subpixel precision to 4 bits, we support coordinates up to ~2896, which means that we can (try to) render to target sizes like 2560x1440. This fixes the main menu backdrop for the Half-Life port. It also introduces more white pixel artifacts in Quake's water / lava rendering, but this is a level geometry visualization bug (see `r_novis`). |
||
---|---|---|
.. | ||
Buffer | ||
AlphaBlendFactors.h | ||
Clipper.cpp | ||
Clipper.h | ||
CMakeLists.txt | ||
Config.h | ||
Device.cpp | ||
Device.h | ||
Image.cpp | ||
Image.h | ||
PixelConverter.cpp | ||
PixelConverter.h | ||
PixelQuad.h | ||
Sampler.cpp | ||
Sampler.h | ||
SIMD.h | ||
Triangle.h |