5.11 The Output Merger Stage
After pixel fragments have been generated by the pixel shader, they move to the output merger (OM) stage of the rendering pipeline. In this stage, some pixel fragments may be rejected (e.g., from the depth or stencil buffer tests). Pixel fragments that are not rejected are written to the back buffer. Blending is also done in this stage, where a pixel may be blended with the pixel currently on the back buffer instead of overriding it completely. Some special effects like transparency are implemented with blending;[/quote]
if the comparison of depths is happened after the pixel shader, what's the significance of z-prepass?
In the past I thought z-prepass will write the depth of the scene into the depth buffer, and then when we draw the scene, the pixel which is behind the headmost pixel will be discard by depth comparision.
thanks a lot~~
Dose all primitive in the viewport will execute its pixel shader?
I find the Output Merger Stage is after Pixel Shader Stage in the book : <Introduction to 3D Game Programming with DirectX 10>.
In terms of the logical DX10 pipeline the depth/stencil test happens after the pixel shader, but in reality all DX10-capable graphics hardware is capable of performing the test before pixel shading as a performance optimization. However there are some cases that can cause the early-Z test to be deactivated, the most notable of which is having the pixel shader output a depth value using SV_Depth.
In terms of the logical DX10 pipeline the depth/stencil test happens after the pixel shader, but in reality all DX10-capable graphics hardware is capable of performing the test before pixel shading as a performance optimization. However there are some cases that can cause the early-Z test to be deactivated, the most notable of which is having the pixel shader output a depth value using SV_Depth.
thank you very much.~~ Thank you for your answer
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement