Disable Z-Test, Disable Z-Write

Use the Disable Z-Test and Disable Z-Write override modes to help determine whether your application is encountering potential performance issues due to Z-buffer operations.

In the viewing pipeline, 3D data is projected onto 2D screen space; a Z-buffer stores the z-coordinate of the object used to render each pixel in 2D space. Z-testing, also known as depth testing, will typically reject attempts to render into a specific pixel if the z-buffer value of a new rendering pixel is further away from the viewer than the current depth value stored in the z-buffer.

The Disable Z-Test override mode does not perform any Z-buffer comparisons.

If you use the Disable Z-Write override mode,the result of the depth comparison is not stored in the Z-buffer.

Intel Graphics Performance Analyzers wireframe off Disable Z Test, Disable Z Write Intel Graphics Performance Analyzers z test Disable Z Test, Disable Z Write
                              Normal Picture                                                                            Disable Z–test

Disabling Z–test and Z-write therefore renders all objects in a sequential order independent of their closeness to the viewer, and reveals some objects that are otherwise hidden.

If these modes significantly improve performance, you may be able to increase your frame rate by using some other culling technique prior to the Z-buffer test in the pipeline. Performance may also be improved by drawing closer objects first, so that the Z-buffer test can reject further objects before these primitives pass through the entire rendering pipeline.

See Also

Override Modes Overview
Disable all overrides
Null Hardware

Disable Draw Calls
2×2 Texture
Simple Pixel Shader
1×1 Scissor Rect
Disable Texture Filtering
Cull None
Cull Clockwise
Cull Counter-Clockwise

Disable Alpha Blending
Disable Alpha Test
Overdraw Visualization
FPS Limit

Disable Z-Test, Disable Z-Write