glDepthRange

The glDepthRange function specifies the mapping of z values from normalized device coordinates to window coordinates.

void glDepthRange(
  GLclampd znear,   
  GLclampd zfar     
);
 

Parameters

znear
The mapping of the near clipping plane to window coordinates. The default value is 0.
zfar
The mapping of the far clipping plane to window coordinates. The default value is 1.

Remarks

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

Error Codes

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.

QuickInfo

  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.

See Also

glBegin, glDepthFunc, glEnd, glGet, glViewport