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 © 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/.