GLDEPTHRANGEINDEXED(3G) OpenGL Manual GLDEPTHRANGEINDEXED(3G)NAME
glDepthRangeIndexed - specify mapping of depth values from normalized device coordinates to window coordinates for a specified viewport
C SPECIFICATION
void glDepthRangeIndexed(GLuint index, GLdouble nearVal, GLdouble farVal);
PARAMETERS
index
Specifies the index of the viewport whose depth range to update.
nearVal
Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0.
farVal
Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.
DESCRIPTION
After clipping and division by w, depth coordinates range from -1 to 1, corresponding to the near and far clipping planes. Each viewport
has an independent depth range specified as a linear mapping of the normalized depth coordinates in this range to window depth coordinates.
Regardless of the actual depth buffer implementation, window coordinate depth values are treated as though they range from 0 through 1
(like color components). glDepthRangeIndexed specifies a linear mapping of the normalized depth coordinates in this range to window depth
coordinates for a specified viewport. Thus, the values accepted by glDepthRangeIndexed are both clamped to this range before they are
accepted.
The index parameter specifies the index of first viewport whose depth range to modify and must be less than the value of GL_MAX_VIEWPORTS.
nearVal and farVal specify near and far values of the depth range for the specified viewport, respectively.
The setting 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.
NOTES
It is not necessary that the near plane distance be less than the far plane distance. Reverse mappings such as nearVal = 1, and farVal = 0
are acceptable.
The type of the nearVal and farVal parameters was changed from GLclampd to GLdouble. This change is transparent to user code and is
described in detail on the removedTypes() page.
ERRORS
GL_INVALID_VALUE is generated if index is greater than or equal to the value of GL_MAX_VIEWPORTS.
ASSOCIATED GETS
glGet() with argument GL_DEPTH_RANGE
SEE ALSO
glDepthFunc(), glDepthRange(), glDepthRangeArray(), glPolygonOffset(), glViewportArray(), glViewport(), removedTypes()
COPYRIGHT
Copyright (C) 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication
License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.
AUTHORS
opengl.org
opengl.org 06/10/2014 GLDEPTHRANGEINDEXED(3G)
Check Out this Related Man Page
GLVIEWPORTINDEXED(3G) OpenGL Manual GLVIEWPORTINDEXED(3G)NAME
glViewportIndexed - set a specified viewport
C SPECIFICATION
void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
void glViewportIndexedfv(GLuint index, const GLfloat *v);
PARAMETERS
index
Specify the first viewport to set.
x, y
For glViewportIndexedf, specifies the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
width, height
For glViewportIndexedf, specifies the width and height of the viewport. When a GL context is first attached to a window, width and
height are set to the dimensions of that window.
v
For glViewportIndexedfv, specifies the address of an array containing the viewport parameters.
DESCRIPTION
glViewportIndexedf and glViewportIndexedfv specify the parameters for a single viewport. index specifies the index of the viewport to
modify. index must be less than the value of GL_MAX_VIEWPORTS. For glViewportIndexedf, x, y, w, and h specify the left, bottom, width and
height of the viewport in pixels, respectively. For glViewportIndexedfv, v contains the address of an array of floating point values
specifying the left (x), bottom (y), width (w), and height (h) of each viewport, in that order. x and y give the location of the
viewport's lower left corner, and w and h give the width and height of the viewport, respectively. The viewport specifies the affine
transformation of x and y from normalized device coordinates to window coordinates. Let x nd y nd be normalized device coordinates. Then
the window coordinates x w y w are computed as follows:
x w = x nd + 1 width 2 + x
y w = y nd + 1 height 2 + y
The location of the viewport's bottom left corner, given by (x, y) is clamped to be within the implementaiton-dependent viewport bounds
range. The viewport bounds range [min, max] can be determined by calling glGet() with argument GL_VIEWPORT_BOUNDS_RANGE. Viewport width and
height are silently clamped to a range that depends on the implementation. To query this range, call glGet() with argument
GL_MAX_VIEWPORT_DIMS.
The precision with which the GL interprets the floating point viewport bounds is implementation-dependent and may be determined by querying
the impementation-defined constant GL_VIEWPORT_SUBPIXEL_BITS.
Calling glViewportIndexedfv is equivalent to calling glViewportArray() with first set to index, count set to 1 and v passsed directly.
glViewportIndexedf is equivalent to:
void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h)
{
const float v[4] = { x, y, w, h };
glViewportArrayv(index, 1, v);
}
ERRORS
GL_INVALID_VALUE is generated if index is greater than or equal to the value of GL_MAX_VIEWPORTS.
GL_INVALID_VALUE is generated if either width or height is negative.
ASSOCIATED GETS
glGet() with argument GL_VIEWPORT
glGet() with argument GL_MAX_VIEWPORT_DIMS
glGet() with argument GL_VIEWPORT_BOUNDS_RANGE
glGet() with argument GL_VIEWPORT_SUBPIXEL_BITS
SEE ALSO
glDepthRange(), glViewport(), glViewportArray()
COPYRIGHT
Copyright (C) 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication
License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.
AUTHORS
opengl.org
opengl.org 06/10/2014 GLVIEWPORTINDEXED(3G)