Light | Dark

# docs.GL

OpenGL 4
OpenGL 3
OpenGL 2
OpenGL ES 3
OpenGL ES 2

# glScissor

## Name

glScissor — define the scissor box

## C Specification

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

## Parameters

`x`, `y`

  Specify the lower left corner of the scissor box. Initially (0, 0).

`width`, `height`

  Specify the width and height of the scissor box. When a GL context is first attached to a window, `width` and `height` are set to the dimensions of that window.

## Description

`glScissor` defines a rectangle, called the scissor box, in window coordinates. The first two arguments, `x` and `y`, specify the lower left corner of the box. `width` and `height` specify the width and height of the box.

To enable and disable the scissor test, call glEnable and glDisable with argument `GL_SCISSOR_TEST`. The test is initially disabled. While the test is enabled, only pixels that lie within the scissor box can be modified by drawing commands. Window coordinates have integer values at the shared corners of frame buffer pixels. `glScissor(0,0,1,1)` allows modification of only the lower left pixel in the window, and `glScissor(0,0,0,0)` doesn't allow modification of any pixels in the window.

When the scissor test is disabled, it is as though the scissor box includes the entire window.

## Errors

`GL_INVALID_VALUE` is generated if either `width` or `height` is negative.

## Associated Gets

glGet with argument `GL_SCISSOR_BOX`

glIsEnabled with argument `GL_SCISSOR_TEST`

## API Version Support

| OpenGL ES API Version
--- | ---
Function Name | 2.0 | 3.0 | 3.1
glScissor | ✔ | ✔ | ✔

## See Also

glEnable, glViewport

## 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 https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/.

Think you can improve this page? Edit this page on GitHub.