## Name

glCullFace — specify whether front- or back-facing facets can be culled

## C Specification

`void glCullFace(` | GLenum mode`)`;

## Parameters

`mode`

  Specifies whether front- or back-facing facets are candidates for culling. Symbolic constants `GL_FRONT`, `GL_BACK`, and `GL_FRONT_AND_BACK` are accepted. The initial value is `GL_BACK`.

## Description

`glCullFace` specifies whether front- or back-facing facets are culled (as specified by mode) when facet culling is enabled. Facet culling is initially disabled. To enable and disable facet culling, call the glEnable and `glDisable` commands with the argument `GL_CULL_FACE`. Facets include triangles, quadrilaterals, polygons, and rectangles.

glFrontFace specifies which of the clockwise and counterclockwise facets are front-facing and back-facing. See glFrontFace.

## Notes

If `mode` is `GL_FRONT_AND_BACK`, no facets are drawn, but other primitives such as points and lines are drawn.

## Errors

`GL_INVALID_ENUM` is generated if `mode` is not an accepted value.

## Associated Gets

glIsEnabled with argument `GL_CULL_FACE`

glGet with argument `GL_CULL_FACE_MODE`

## 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
`glCullFace` | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔

## See Also

glEnable, glFrontFace

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