<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd">
<html
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:mml="http://www.w3.org/1998/Math/MathML"
><head><title>glFrontFace</title><link rel="stylesheet" href="style.css" type="text/css"/><meta name="generator" content="DocBook XSL Stylesheets V1.59.1"/><link rel="home" href="index.xml" title="PyOpenGL 2.0.1.07 Man Pages"/><link rel="up" href="reference-GL.xml" title="GL"/><link rel="previous" href="glFog.3G.xml" title="glFog"/><link rel="next" href="glFrustum.3G.xml" title="glFrustum"/></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">glFrontFace</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="glFog.3G.xml">Prev</a> </td><th width="60%" align="center">GL</th><td width="20%" align="right"> <a accesskey="n" href="glFrustum.3G.xml">Next</a></td></tr></table><hr/></div><div class="refentry" lang="en"><a name="glFrontFace.3G"/><div class="titlepage"/><div class="refnamediv"><a name="glFrontFace.3G-name"/><h2>Name</h2><p>glFrontFace &#8212; define front- and back-facing polygons</p></div><div class="refsynopsisdiv"><a name="glFrontFace.3G-c_spec"/><h2>C Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code>void <tt>glFrontFace</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code>GLenum <i><tt>mode</tt></i>);</code></td></tr></table></div><div class="refsynopsisdiv"><a name="glFrontFace.3G-python_spec"/><h2>Python Specification</h2><table class="funcprototype" border="0" cellpadding="0" cellspacing="0"><tr><td valign="top"><code><tt>glFrontFace</tt></code></td><td valign="top"><code>(</code></td><td valign="top"><code><i><tt>mode</tt></i>) &#8594; <tt>None</tt></code></td></tr></table></div><div class="refsect1" lang="en"><a name="glFrontFace.3G-parameters"/><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><i><tt>mode</tt></i></span></dt><dd>
						Specifies the orientation of front-facing polygons. <tt>GL_CW</tt> and
						<tt>GL_CCW</tt> are accepted. The initial value is <tt>GL_CCW</tt>.
					</dd></dl></div></div><div class="refsect1" lang="en"><a name="glFrontFace.3G-description"/><h2>Description</h2><p>
			In a scene composed entirely of opaque closed surfaces, back-facing polygons are never visible. Eliminating these
			invisible polygons has the obvious benefit of speeding up the rendering of the image. To enable and disable elimination
			of back-facing polygons, call <a href="glEnable.3G.xml"><tt>glEnable</tt></a> and <a href="glEnable.3G.xml"><tt>glDisable</tt></a> with argument <tt>GL_CULL_FACE</tt>.
		</p><p>
			The projection of a polygon to window coordinates is said to have clockwise winding if an imaginary object following
			the path from its first vertex, its second vertex, and so on, to its last vertex, and finally back to its first vertex,
			moves in a clockwise direction about the interior of the polygon. The polygon's winding is said to be counterclockwise
			if the imaginary object following the same path moves in a counterclockwise direction about the interior of the
			polygon. <tt>glFrontFace</tt> specifies whether polygons with clockwise winding in window coordinates, or
			counterclockwise winding in window coordinates, are taken to be front-facing. Passing <tt>GL_CCW</tt> to
			<i><tt>mode</tt></i> selects counterclockwise polygons as front-facing; <tt>GL_CW</tt> selects
			clockwise polygons as front-facing. By default, counterclockwise polygons are taken to be front-facing.
		</p></div><div class="refsect1" lang="en"><a name="glFrontFace.3G-errors"/><h2>Errors</h2><p>
			<tt>GL_INVALID_ENUM</tt> is generated if <i><tt>mode</tt></i> is not an accepted value.
		</p><p>
			<tt>GL_INVALID_OPERATION</tt> is generated if <tt>glFrontFace</tt> is executed between the
			execution of <a href="glBegin.3G.xml"><tt>glBegin</tt></a> and the corresponding execution of <a href="glBegin.3G.xml"><tt>glEnd</tt></a>.
		</p></div><div class="refsect1" lang="en"><a name="glFrontFace.3G-associated_gets"/><h2>Associated Gets</h2><p>
			<tt>glGet</tt> with argument <tt>GL_FRONT_FACE</tt>
		</p></div><div class="refsect1" lang="en"><a name="glFrontFace.3G-see_also"/><h2>See Also</h2><p>
			<span class="simplelist"><a href="glCullFace.3G.xml">glCullFace</a>, <a href="glLightModel.3G.xml">glLightModel</a></span>
		</p></div></div><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="glFog.3G.xml">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="reference-GL.xml">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="glFrustum.3G.xml">Next</a></td></tr><tr><td width="40%" align="left" valign="top">glFog </td><td width="20%" align="center"><a accesskey="h" href="index.xml">Home</a></td><td width="40%" align="right" valign="top"> glFrustum</td></tr></table></div></body></html>