I understand that the normalized device coordinates are the result of the perspective divide of clip space coordinates and allow for an easy mapping of the xy coordinates to a physical screen. What I do not get however is why we need to normalize the z value? Why not fill the depth buffer with the actual camera space depths? Also by normalizing the z value we need to additionally keep track of the camera space depth for interpolation because that value gets lost in ndc space.

  • $\begingroup$ Normalized coordinates can be represented using fixed point, i.e. bounded integers. Integer arithmetic is more amenable to fast hardware implementations. $\endgroup$
    – user1703
    Jun 11, 2023 at 9:33


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.