forked from BSVino/docs.gl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
glEnable.xhtml
179 lines (179 loc) · 18.9 KB
/
glEnable.xhtml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<div class="refentry" title="glEnable"><a id="glEnable"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>glEnable — enable or disable server-side GL capabilities</p></div><div class="refsynopsisdiv" title="C Specification"><h2>C Specification</h2><div class="funcsynopsis"><table class="funcprototype-table"><tr><td><code class="funcdef">void <b class="fsfunc">glEnable</b>(</code></td><td>GLenum <var class="pdparam">cap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div><table class="funcprototype-table"><tr><td><code class="funcdef">void <b class="fsfunc">glDisable</b>(</code></td><td>GLenum <var class="pdparam">cap</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1" title="Parameters"><a id="parameters"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term">
<em class="parameter"><code>cap</code></em>
</span></dt><dd><p>Specifies a symbolic constant indicating a GL capability.</p></dd></dl></div></div><div class="refsect1" title="Description"><a id="description"></a><h2>Description</h2><p><code class="function">glEnable</code> and <code class="function">glDisable</code>
enable and disable various capabilities. Use
<a class="citerefentry" href="glIsEnabled"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a> or
<a class="citerefentry" href="glGet"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> to determine the
current setting of any capability. The initial value for
each capability with the exception of
<code class="constant">GL_DITHER</code> and
<code class="constant">GL_MULTISAMPLE</code> is
<code class="constant">GL_FALSE</code>. The initial value for
<code class="constant">GL_DITHER</code> and
<code class="constant">GL_MULTISAMPLE</code> is
<code class="constant">GL_TRUE</code>.</p><p>Both <code class="function">glEnable</code> and <code class="function">glDisable</code>
take a single argument, <em class="parameter"><code>cap</code></em>,
which can assume one of the following values:</p><div class="variablelist"><dl><dt><span class="term">
<code class="constant">GL_ALPHA_TEST</code>
</span></dt><dd><p>If enabled, do alpha testing. See
<a class="citerefentry" href="glAlphaFunc"><span class="citerefentry"><span class="refentrytitle">glAlphaFunc</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_BLEND</code>
</span></dt><dd><p>If enabled, blend the computed fragment color values
with the values in the color buffers. See
<a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_COLOR_LOGIC_OP</code>
</span></dt><dd><p>If enabled, apply the currently selected logical
operation to the computed fragment color and color buffer values. See
<a class="citerefentry" href="glLogicOp"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_CLIP_PLANE</code><span class="emphasis"><em>i</em></span>
</span></dt><dd><p>If enabled, clip geometry against user-defined clipping plane
<span class="emphasis"><em>i</em></span>. See
<a class="citerefentry" href="glClipPlane"><span class="citerefentry"><span class="refentrytitle">glClipPlane</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_COLOR_MATERIAL</code>
</span></dt><dd><p>If enabled, have ambient and diffuse material
parameters track the current color.</p></dd><dt><span class="term">
<code class="constant">GL_CULL_FACE</code>
</span></dt><dd><p>If enabled, cull polygons based on their winding in
window coordinates. See
<a class="citerefentry" href="glCullFace"><span class="citerefentry"><span class="refentrytitle">glCullFace</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_DEPTH_TEST</code>
</span></dt><dd><p>If enabled, do depth comparisons and update the
depth buffer. Note that even if the depth buffer exists
and the depth mask is non-zero, the depth buffer is not
updated if the depth test is disabled. See
<a class="citerefentry" href="glDepthFunc"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a>
and
<a class="citerefentry" href="glDepthRange"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_DITHER</code>
</span></dt><dd><p>If enabled, dither color components
before they are written to the color buffer.</p></dd><dt><span class="term">
<code class="constant">GL_FOG</code>
</span></dt><dd><p>If enabled, blend a fog color into the
posttexturing color. See
<a class="citerefentry" href="glFog"><span class="citerefentry"><span class="refentrytitle">glFog</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_LIGHT</code><em class="replaceable"><code>i</code></em>
</span></dt><dd><p>If enabled, include light <em class="replaceable"><code>i</code></em>
in the evaluation of the lighting equation. See
<a class="citerefentry" href="glLightModel"><span class="citerefentry"><span class="refentrytitle">glLightModel</span></span></a>
and
<a class="citerefentry" href="glLight"><span class="citerefentry"><span class="refentrytitle">glLight</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_LIGHTING</code>
</span></dt><dd><p>If enabled, use the current lighting parameters to
compute the vertex color. Otherwise, simply
associate the current color with each vertex. See
<a class="citerefentry" href="glMaterial"><span class="citerefentry"><span class="refentrytitle">glMaterial</span></span></a>,
<a class="citerefentry" href="glLightModel"><span class="citerefentry"><span class="refentrytitle">glLightModel</span></span></a>, and
<a class="citerefentry" href="glLight"><span class="citerefentry"><span class="refentrytitle">glLight</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_LINE_SMOOTH</code>
</span></dt><dd><p>If enabled, draw lines with correct filtering.
Otherwise, draw aliased lines. See
<a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_MULTISAMPLE</code>
</span></dt><dd><p>If enabled, use multiple fragment samples in computing the final color
of a pixel. See
<a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_NORMALIZE</code>
</span></dt><dd><p>If enabled, normal vectors are normalized to unit length after
transformation and before lighting. This method is generally
less efficient than <code class="constant">GL_RESCALE_NORMAL</code>. See
<a class="citerefentry" href="glNormal"><span class="citerefentry"><span class="refentrytitle">glNormal</span></span></a> and
<a class="citerefentry" href="glNormalPointer"><span class="citerefentry"><span class="refentrytitle">glNormalPointer</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_POINT_SMOOTH</code>
</span></dt><dd><p>If enabled, draw points with proper filtering.
Otherwise, draw aliased points. See
<a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_POINT_SPRITE_OES</code>
</span></dt><dd><p>
If enabled, point sprites are enabled.
See
<a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>
and
<a class="citerefentry" href="glTexEnv"><span class="citerefentry"><span class="refentrytitle">glTexEnv</span></span></a>
</p></dd><dt><span class="term">
<code class="constant">GL_POLYGON_OFFSET_FILL</code>
</span></dt><dd><p>If enabled,
an offset is added to depth values of a polygon's
fragments before the depth comparison is performed. See
<a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_RESCALE_NORMAL</code>
</span></dt><dd><p>If enabled, normal vectors are scaled after transformation and before
lighting by a factor computed from the modelview matrix. If the modelview
matrix scales space uniformly, this has the effect of restoring the
transformed normal to unit length. This method is generally more efficient than
<code class="constant">GL_NORMALIZE</code>. See
<a class="citerefentry" href="glNormal"><span class="citerefentry"><span class="refentrytitle">glNormal</span></span></a> and
<a class="citerefentry" href="glNormalPointer"><span class="citerefentry"><span class="refentrytitle">glNormalPointer</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_SAMPLE_ALPHA_TO_COVERAGE</code>
</span></dt><dd><p>If enabled, compute a temporary coverage value where each bit is
determined by the alpha value at the corresponding sample location. The
temporary coverage value is then ANDed with the fragment coverage value.</p></dd><dt><span class="term">
<code class="constant">GL_SAMPLE_ALPHA_TO_ONE</code>
</span></dt><dd><p>If enabled, each sample alpha value is replaced by the maximum
representable alpha value.</p></dd><dt><span class="term">
<code class="constant">GL_SAMPLE_COVERAGE</code>
</span></dt><dd><p>If enabled, the fragment's coverage is ANDed with the temporary
coverage value. If <code class="constant">GL_SAMPLE_COVERAGE_INVERT</code> is set to
<code class="constant">GL_TRUE</code>, invert the coverage value. See
<a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_SCISSOR_TEST</code>
</span></dt><dd><p>If enabled, discard fragments that are outside the
scissor rectangle. See
<a class="citerefentry" href="glScissor"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_STENCIL_TEST</code>
</span></dt><dd><p>If enabled, do stencil testing and update the
stencil buffer. See
<a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>,
<a class="citerefentry" href="glStencilMask"><span class="citerefentry"><span class="refentrytitle">glStencilMask</span></span></a>,
and
<a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>.</p></dd><dt><span class="term">
<code class="constant">GL_TEXTURE_2D</code>
</span></dt><dd><p>If enabled, two-dimensional texturing is performed
for the active texture unit. See
<a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>,
<a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>,
<a class="citerefentry" href="glCompressedTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCompressedTexImage2D</span></span></a>,
and
<a class="citerefentry" href="glCopyTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCopyTexImage2D</span></span></a>.</p></dd></dl></div></div><div class="refsect1" title="Notes"><a id="notes"></a><h2>Notes</h2><p>
<code class="constant">GL_CLIP_PLANE</code><span class="emphasis"><em>i</em></span> and
<code class="constant">GL_POINT_SPRITE_OES</code> are only supported if the GL version is
1.1 or greater.
</p></div><div class="refsect1" title="Errors"><a id="errors"></a><h2>Errors</h2><p><code class="constant">GL_INVALID_ENUM</code> is generated if
<em class="parameter"><code>cap</code></em>
is not one of the values listed previously.</p></div><div class="refsect1" title="Associated Gets"><a id="associatedgets"></a><h2>Associated Gets</h2><p>
<a class="citerefentry" href="glIsEnabled"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a>
</p><p>
<a class="citerefentry" href="glGet"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a>
</p></div><div class="refsect1" title="See Also"><a id="seealso"></a><h2>See Also</h2><p>
<a class="citerefentry" href="glActiveTexture"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>,
<a class="citerefentry" href="glAlphaFunc"><span class="citerefentry"><span class="refentrytitle">glAlphaFunc</span></span></a>,
<a class="citerefentry" href="glBlendFunc"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a>,
<a class="citerefentry" href="glClipPlane"><span class="citerefentry"><span class="refentrytitle">glClipPlane</span></span></a>,
<a class="citerefentry" href="glCompressedTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCompressedTexImage2D</span></span></a>,
<a class="citerefentry" href="glCopyTexImage2D"><span class="citerefentry"><span class="refentrytitle">glCopyTexImage2D</span></span></a>,
<a class="citerefentry" href="glCullFace"><span class="citerefentry"><span class="refentrytitle">glCullFace</span></span></a>,
<a class="citerefentry" href="glDepthFunc"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a>,
<a class="citerefentry" href="glDepthRange"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>,
<a class="citerefentry" href="glEnableClientState"><span class="citerefentry"><span class="refentrytitle">glEnableClientState</span></span></a>,
<a class="citerefentry" href="glFog"><span class="citerefentry"><span class="refentrytitle">glFog</span></span></a>,
<a class="citerefentry" href="glGet"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a>,
<a class="citerefentry" href="glIsEnabled"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a>,
<a class="citerefentry" href="glLight"><span class="citerefentry"><span class="refentrytitle">glLight</span></span></a>,
<a class="citerefentry" href="glLightModel"><span class="citerefentry"><span class="refentrytitle">glLightModel</span></span></a>,
<a class="citerefentry" href="glLineWidth"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>,
<a class="citerefentry" href="glLogicOp"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>,
<a class="citerefentry" href="glMaterial"><span class="citerefentry"><span class="refentrytitle">glMaterial</span></span></a>,
<a class="citerefentry" href="glNormal"><span class="citerefentry"><span class="refentrytitle">glNormal</span></span></a>,
<a class="citerefentry" href="glPointSize"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>,
<a class="citerefentry" href="glPolygonOffset"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>,
<a class="citerefentry" href="glSampleCoverage"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>,
<a class="citerefentry" href="glScissor"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>,
<a class="citerefentry" href="glStencilFunc"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>,
<a class="citerefentry" href="glStencilOp"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>,
<a class="citerefentry" href="glTexEnv"><span class="citerefentry"><span class="refentrytitle">glTexEnv</span></span></a>,
<a class="citerefentry" href="glTexImage2D"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>
</p></div><div class="refsect1" title="Copyright"><a id="copyright"></a><h2>Copyright</h2><p>
Copyright © 2003-2004
Silicon Graphics, Inc. This document is licensed under the SGI
Free Software B License. For details, see
<a class="ulink" href="https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/" target="_top">https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/</a>.
</p></div></div>