## Name

glViewport — set the viewport

## C Specification

`void glViewport(` | GLint x,
| GLint y,
| GLsizei width,
| GLsizei height`)`;

## Parameters

`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 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

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`

## Version Support

| OpenGL Version
--- | ---
Function / Feature Name | 2.0 | 2.1 | 3.0 | 3.1 | 3.2 | 3.3 | 4.0 | 4.1 | 4.2 | 4.3 | 4.4 | 4.5
`glViewport` | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔

## See Also

glDepthRange

## Copyright

Copyright © 1991-2006 Silicon Graphics, Inc. Copyright © 2010-2014 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.