The glDepthRange function specifies the mapping of z values from normalized device coordinates to window coordinates.
void glDepthRange(
GLclampd znear,
GLclampd zfar
);
After clipping and division by w, z-coordinates range from –1.0 to 1.0, corresponding to the near and far clipping planes. The glDepthRange function specifies a linear mapping of the normalized z-coordinates in this range to window z-coordinates. Regardless of the actual depth buffer implementation, window coordinate depth values are treated as though they range from 0.0 through 1.0 (like color components). Thus, the values accepted by glDepthRange are both clamped to this range before they are accepted.
The default mapping of 0,1 maps the near plane to 0 and the far plane to 1. With this mapping, the depth-buffer range is fully utilized.
It is not necessary that znear be less than zfar. Reverse mappings such as 1,0 are acceptable.
The following function retrieves information related to glDepthRange:
glGet with argument GL_DEPTH_RANGE
The following are the error codes generated and their conditions.
Error Code | Condition |
---|---|
GL_INVALID_OPERATION | glDepthRange was called between a call to glBegin and the corresponding call to glEnd. |
Windows NT: Use version 3.5 and later.
Windows: Use Windows 95 and later.
Windows CE: Unsupported.
Header: Declared in gl.h.
Import Library: Link with opengl32.lib.
glBegin, glDepthFunc, glEnd, glGet, glViewport