ladybird/Userland/Libraries/LibSoftGPU
Jelle Raaijmakers 1a3af23a10 LibGL: Defer depth writing until after alpha testing
In the OpenGL fixed function pipeline, alpha testing should happen
before depth testing and writing. Since the tests are basically boolean
ANDs, we can reorder them however we like to improve performance and as
such, we perform early depth testing and delay the more expensive alpha
testing until we know which pixels to test.

However, we were already writing to the depth buffer during the depth
test, even if the alpha test fails later on. Depth writing should only
happen if depth testing _and_ writing is enabled.

This change introduces depth staging, deferring the depth write until
we are absolutely sure we should do so.
2021-12-30 14:24:29 +01:00
..
Clipper.cpp LibGL+LibSoftGPU: Move Vertex and Triangle structs to LibSoftGPU 2021-12-24 05:10:28 -08:00
Clipper.h LibGL+LibSoftGPU: Move Vertex and Triangle structs to LibSoftGPU 2021-12-24 05:10:28 -08:00
CMakeLists.txt LibSoftGPU: Add device method for creating images 2021-12-24 05:10:28 -08:00
DepthBuffer.cpp LibGL+LibSoftGPU: Move rendering related code to LibSoftGPU library 2021-12-24 05:10:28 -08:00
DepthBuffer.h LibGL+LibSoftGPU: Move rendering related code to LibSoftGPU library 2021-12-24 05:10:28 -08:00
Device.cpp LibGL: Defer depth writing until after alpha testing 2021-12-30 14:24:29 +01:00
Device.h LibGL+LibSoftGPU: Add method to query device info 2021-12-24 05:10:28 -08:00
DeviceInfo.h LibGL+LibSoftGPU: Add method to query device info 2021-12-24 05:10:28 -08:00
Enums.h LibSoftGPU: Move enums into separate file 2021-12-24 05:10:28 -08:00
Image.cpp LibSoftGPU: Add method to copy texels between images 2021-12-24 05:10:28 -08:00
Image.h LibSoftGPU: Add method to copy texels between images 2021-12-24 05:10:28 -08:00
ImageDataLayout.h LibSoftGPU: Add methods to read and write image data 2021-12-24 05:10:28 -08:00
ImageFormat.h LibSoftGPU: Add Image class 2021-12-24 05:10:28 -08:00
Sampler.cpp LibSoftGPU: Mark wrap_clamp as [[maybe_unused]] 2021-12-27 15:08:19 +02:00
Sampler.h LibSoftGPU: Add legacy texture env mode to sampler config 2021-12-24 05:10:28 -08:00
Triangle.h LibGL+LibSoftGPU: Move Vertex and Triangle structs to LibSoftGPU 2021-12-24 05:10:28 -08:00
Vertex.h LibGL+LibSoftGPU: Move Vertex and Triangle structs to LibSoftGPU 2021-12-24 05:10:28 -08:00