GLAPI/glViewport: Difference between revisions

From OpenGL Wiki
Jump to navigation Jump to search
4.0 API.
 
 
(8 intermediate revisions by 2 users not shown)
Line 8: Line 8:
== Function Definition ==
== Function Definition ==


   void '''glViewport'''(GLint ''x'', GLint ''y'', GLsizei ''width'', GLsizei ''height'');
   void '''glViewport'''(GLint {{param|x}}, GLint {{param|y}}, GLsizei {{param|width}}, GLsizei {{param|height}});


; x, y
; x, y
: Specify the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
: Specify the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
; width, height
; width, height
: Specify 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.
: Specify the width and height of the viewport. When a GL context is first attached to a window, {{param|width}} and {{param|height}} are set to the dimensions of that window.


== Description ==
== Description ==


'''glViewport''' specifies the affine transformation of <!--Missing Equation--> and <!--Missing Equation--> from normalized device coordinates to window coordinates. Let <!--Missing Equation--> be normalized device coordinates. Then the window coordinates <!--Missing Equation--> are computed as follows:
'''glViewport''' specifies the affine transformation of ''x'' and ''y'' from normalized device coordinates to window coordinates. Let (x<sub>nd</sub>, y<sub>nd</sub>) be normalized device coordinates. Then the window coordinates (x<sub>w</sub>, y<sub>w</sub>) are computed as follows:


<!--Missing Equation-->
{{glapi viewport equations}}


<!--Missing Equation-->
Viewport width and height are silently clamped to a range that depends on the implementation. To query this range, call {{apifunc|glGet}} with argument {{enum|GL_MAX_VIEWPORT_DIMS}}.
 
Viewport width and height are silently clamped to a range that depends on the implementation. To query this range, call [[GLAPI/glGet|glGet]] with argument {{code|GL_MAX_VIEWPORT_DIMS}}.


== Errors ==
== Errors ==


{{code|GL_INVALID_VALUE}} is generated if either ''width'' or ''height'' is negative.
{{enum|GL_INVALID_VALUE}} is generated if either {{param|width}} or {{param|height}} is negative.


== Associated Gets ==
== Associated Gets ==


[[GLAPI/glGet|glGet]] with argument {{code|GL_VIEWPORT}}
{{apifunc|glGet}} with argument {{enum|GL_VIEWPORT}}


[[GLAPI/glGet|glGet]] with argument {{code|GL_MAX_VIEWPORT_DIMS}}
{{apifunc|glGet}} with argument {{enum|GL_MAX_VIEWPORT_DIMS}}


== See Also ==
== See Also ==


[[GLAPI/glDepthRange|glDepthRange]]
{{apifunc|glDepthRange}}, {{apifunc|glViewportArray}}, {{apifunc|glViewportIndexed}}


== Copyright ==
== Copyright ==


Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see [http://oss.sgi.com/projects/FreeB/ http://oss.sgi.com/projects/FreeB/].
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see [https://khronos.org/registry/OpenGL-Refpages/LICENSES/LicenseRef-FreeB.txt LicenseRef-FreeB].


[[Category:API Reference 4|Viewport]]
[[Category:Core API Ref Viewport and Clipping|Viewport]]
[[Category:Core API Reference|Viewport]]

Latest revision as of 21:53, 5 February 2021

glViewport
Core in version 4.6
Core since version 1.0

glViewport: set the viewport

Function Definition

 void glViewport(GLint x​, GLint y​, GLsizei width​, GLsizei height​);
x, y
Specify the lower left corner of the viewport rectangle, in pixels. The initial value is (0,0).
width, height
Specify 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.

Description

glViewport specifies the affine transformation of x and y from normalized device coordinates to window coordinates. Let (xnd, ynd) be normalized device coordinates. Then the window coordinates (xw, yw) are computed as follows:

$ x_{w}=(x_{nd}+1)\left({\tfrac {width}{2}}\right)+x $

$ y_{w}=(y_{nd}+1)\left({\tfrac {height}{2}}\right)+y $


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.

Errors

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

See Also

glDepthRange, glViewportArray, glViewportIndexed

Copyright

Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see LicenseRef-FreeB.