Commit | Line | Data |
---|---|---|
7faf1d71 AW |
1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd"> | |
3 | <!-- saved from url=(0013)about:internet --> | |
4 | <?xml-stylesheet type="text/xsl" href="mathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:pref="http://www.w3.org/2002/Math/preference" pref:renderer="mathplayer-dl"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" type="text/css" href="opengl-man.css" /><title>glEnable - OpenGL 4 Reference Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.69.1" /></head><body><div class="refentry" lang="en" xml:lang="en"><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"><h2>C Specification</h2><div class="funcsynopsis"><p><code class="funcdef">void <b class="fsfunc">glEnable</b>(</code>GLenum <var class="pdparam">cap</var><code>)</code>;</p></div></div><div class="refsect1" lang="en" xml:lang="en"><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> | |
5 | Specifies a symbolic constant indicating a GL capability. | |
6 | </p></dd></dl></div></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><p><code class="funcdef">void <b class="fsfunc">glDisable</b>(</code>GLenum <var class="pdparam">cap</var><code>)</code>;</p></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters2"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>cap</code></em></span></dt><dd><p> | |
7 | Specifies a symbolic constant indicating a GL capability. | |
8 | </p></dd></dl></div></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><p><code class="funcdef">void <b class="fsfunc">glEnablei</b>(</code>GLenum <var class="pdparam">cap</var>, GLuint <var class="pdparam">index</var><code>)</code>;</p></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters3"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>cap</code></em></span></dt><dd><p> | |
9 | Specifies a symbolic constant indicating a GL capability. | |
10 | </p></dd><dt><span class="term"><em class="parameter"><code>index</code></em></span></dt><dd><p> | |
11 | Specifies the index of the swtich to enable. | |
12 | </p></dd></dl></div></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><p><code class="funcdef">void <b class="fsfunc">glDisablei</b>(</code>GLenum <var class="pdparam">cap</var>, GLuint <var class="pdparam">index</var><code>)</code>;</p></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters4"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>cap</code></em></span></dt><dd><p> | |
13 | Specifies a symbolic constant indicating a GL capability. | |
14 | </p></dd><dt><span class="term"><em class="parameter"><code>index</code></em></span></dt><dd><p> | |
15 | Specifies the index of the swtich to disable. | |
16 | </p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="description"></a><h2>Description</h2><p> | |
17 | <code class="function">glEnable</code> and <a href="glDisable.xml"><span class="citerefentry"><span class="refentrytitle">glDisable</span></span></a> enable and disable various capabilities. | |
18 | Use <a href="glIsEnabled.xml"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a> or <a href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> to determine the current setting | |
19 | of any capability. The initial value for each capability with the | |
20 | exception of <code class="constant">GL_DITHER</code> and <code class="constant">GL_MULTISAMPLE</code> is | |
21 | <code class="constant">GL_FALSE</code>. The initial value for | |
22 | <code class="constant">GL_DITHER</code> and <code class="constant">GL_MULTISAMPLE</code> is <code class="constant">GL_TRUE</code>. | |
23 | </p><p> | |
24 | Both <code class="function">glEnable</code> and <a href="glDisable.xml"><span class="citerefentry"><span class="refentrytitle">glDisable</span></span></a> take a single argument, <em class="parameter"><code>cap</code></em>, | |
25 | which can assume one of the following values: | |
26 | </p><p> | |
27 | Some of the GL's capabilities are indexed. <code class="function">glEnablei</code> and <code class="function">glDisablei</code> enable and disable | |
28 | indexed capabilities. | |
29 | </p><div class="variablelist"><dl><dt><span class="term"><code class="constant">GL_BLEND</code></span></dt><dd><p> | |
30 | </p><p> | |
31 | If enabled, | |
32 | blend the computed fragment color values with the values in the color | |
33 | buffers. See <a href="glBlendFunc.xml"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a>. | |
34 | </p></dd><dt><span class="term"><code class="constant">GL_CLIP_DISTANCE</code><span class="emphasis"><em>i</em></span></span></dt><dd><p> | |
35 | </p><p> | |
36 | If enabled, clip geometry against user-defined half space <span class="emphasis"><em>i</em></span>. | |
37 | </p></dd><dt><span class="term"><code class="constant">GL_COLOR_LOGIC_OP</code></span></dt><dd><p> | |
38 | </p><p> | |
39 | If enabled, | |
40 | apply the currently selected logical operation to the computed fragment | |
41 | color and color buffer values. See <a href="glLogicOp.xml"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>. | |
42 | </p></dd><dt><span class="term"><code class="constant">GL_CULL_FACE</code></span></dt><dd><p> | |
43 | </p><p> | |
44 | If enabled, | |
45 | cull polygons based on their winding in window coordinates. | |
46 | See <a href="glCullFace.xml"><span class="citerefentry"><span class="refentrytitle">glCullFace</span></span></a>. | |
47 | </p></dd><dt><span class="term"><code class="constant">GL_DEBUG_OUTPUT</code></span></dt><dd><p> | |
48 | </p><p> | |
49 | If enabled, debug messages are produced by a debug context. When disabled, | |
50 | the debug message log is silenced. Note that in a non-debug context, very | |
51 | few, if any messages might be produced, even when <code class="constant">GL_DEBUG_OUTPUT</code> | |
52 | is enabled. | |
53 | </p></dd><dt><span class="term"><code class="constant">GL_DEBUG_OUTPUT_SYNCHRONOUS</code></span></dt><dd><p> | |
54 | </p><p> | |
55 | If enabled, debug messages are produced synchronously by a debug context. If disabled, | |
56 | debug messages may be produced asynchronously. In particular, they may be delayed relative | |
57 | to the execution of GL commands, and the debug callback function may be called from | |
58 | a thread other than that in which the commands are executed. | |
59 | See <a href="glDebugMessageCallback.xml"><span class="citerefentry"><span class="refentrytitle">glDebugMessageCallback</span></span></a>. | |
60 | </p></dd><dt><span class="term"><code class="constant">GL_DEPTH_CLAMP</code></span></dt><dd><p> | |
61 | </p><p> | |
62 | If enabled, | |
63 | the | |
64 | ||
65 | <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"> | |
66 | <mml:mo>-</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mo>≤</mml:mo><mml:msub><mml:mi>z</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mo>≤</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mi>c</mml:mi></mml:msub> | |
67 | </mml:math> | |
68 | plane equation is ignored by view volume clipping (effectively, there is no near or | |
69 | far plane clipping). | |
70 | See <a href="glDepthRange.xml"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>. | |
71 | </p></dd><dt><span class="term"><code class="constant">GL_DEPTH_TEST</code></span></dt><dd><p> | |
72 | </p><p> | |
73 | If enabled, | |
74 | do depth comparisons and update the depth buffer. Note that even if | |
75 | the depth buffer exists and the depth mask is non-zero, the | |
76 | depth buffer is not updated if the depth test is disabled. See | |
77 | <a href="glDepthFunc.xml"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a> and | |
78 | <a href="glDepthRange.xml"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>. | |
79 | </p></dd><dt><span class="term"><code class="constant">GL_DITHER</code> </span></dt><dd><p> | |
80 | </p><p> | |
81 | If enabled, | |
82 | dither color components or indices before they are written to the | |
83 | color buffer. | |
84 | </p></dd><dt><span class="term"><code class="constant">GL_FRAMEBUFFER_SRGB</code> </span></dt><dd><p> | |
85 | </p><p> | |
86 | If enabled | |
87 | and the value of <code class="constant">GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING</code> for the | |
88 | framebuffer attachment corresponding to the destination buffer is <code class="constant">GL_SRGB</code>, | |
89 | the R, G, and B destination color values (after conversion from fixed-point to floating-point) | |
90 | are considered to be encoded for the sRGB color space and hence are linearized prior to | |
91 | their use in blending. | |
92 | </p></dd><dt><span class="term"><code class="constant">GL_LINE_SMOOTH</code></span></dt><dd><p> | |
93 | </p><p> | |
94 | If enabled, | |
95 | draw lines with correct filtering. | |
96 | Otherwise, | |
97 | draw aliased lines. | |
98 | See <a href="glLineWidth.xml"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>. | |
99 | </p></dd><dt><span class="term"><code class="constant">GL_MULTISAMPLE</code></span></dt><dd><p> | |
100 | </p><p> | |
101 | If enabled, | |
102 | use multiple fragment samples in computing the final color of a pixel. | |
103 | See <a href="glSampleCoverage.xml"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. | |
104 | </p></dd><dt><span class="term"><code class="constant">GL_POLYGON_OFFSET_FILL</code></span></dt><dd><p> | |
105 | </p><p> | |
106 | If enabled, and if the polygon is rendered in | |
107 | <code class="constant">GL_FILL</code> mode, an offset is added to depth values of a polygon's | |
108 | fragments before the depth comparison is performed. | |
109 | See <a href="glPolygonOffset.xml"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. | |
110 | </p></dd><dt><span class="term"><code class="constant">GL_POLYGON_OFFSET_LINE</code></span></dt><dd><p> | |
111 | </p><p> | |
112 | If enabled, and if the polygon is rendered in | |
113 | <code class="constant">GL_LINE</code> mode, an offset is added to depth values of a polygon's | |
114 | fragments before the depth comparison is performed. | |
115 | See <a href="glPolygonOffset.xml"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. | |
116 | </p></dd><dt><span class="term"><code class="constant">GL_POLYGON_OFFSET_POINT</code></span></dt><dd><p> | |
117 | </p><p> | |
118 | If enabled, an offset is added to depth values of a polygon's fragments | |
119 | before the depth comparison is performed, if the polygon is rendered in | |
120 | <code class="constant">GL_POINT</code> mode. See <a href="glPolygonOffset.xml"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>. | |
121 | </p></dd><dt><span class="term"><code class="constant">GL_POLYGON_SMOOTH</code></span></dt><dd><p> | |
122 | </p><p> | |
123 | If enabled, draw polygons with proper filtering. | |
124 | Otherwise, draw aliased polygons. For correct antialiased polygons, | |
125 | an alpha buffer is needed and the polygons must be sorted front to | |
126 | back. | |
127 | </p></dd><dt><span class="term"><code class="constant">GL_PRIMITIVE_RESTART</code></span></dt><dd><p> | |
128 | </p><p> | |
129 | Enables primitive restarting. If enabled, any one of the draw commands | |
130 | which transfers a set of generic attribute array elements to the GL will restart | |
131 | the primitive when the index of the vertex is equal to the primitive restart index. | |
132 | See <a href="glPrimitiveRestartIndex.xml"><span class="citerefentry"><span class="refentrytitle">glPrimitiveRestartIndex</span></span></a>. | |
133 | </p></dd><dt><span class="term"><code class="constant">GL_PRIMITIVE_RESTART_FIXED_INDEX</code></span></dt><dd><p> | |
134 | </p><p> | |
135 | Enables primitive restarting with a fixed index. If enabled, any one of the | |
136 | draw commands which transfers a set of generic attribute array elements to the GL will | |
137 | restart the primitive when the index of the vertex is equal to the fixed primitive | |
138 | index for the specified index type. The fixed index is equal to | |
139 | <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mml:msup><mml:mn>2</mml:mn><mml:mi>n</mml:mi></mml:msup><mml:mo>−</mml:mo><mml:mn>1</mml:mn></mml:math> | |
140 | where <span class="emphasis"><em>n</em></span> is equal to 8 for <code class="constant">GL_UNSIGNED_BYTE</code>, | |
141 | 16 for <code class="constant">GL_UNSIGNED_SHORT</code> and 32 for <code class="constant">GL_UNSIGNED_INT</code>. | |
142 | </p></dd><dt><span class="term"><code class="constant">GL_SAMPLE_ALPHA_TO_COVERAGE</code></span></dt><dd><p> | |
143 | </p><p> | |
144 | If enabled, | |
145 | compute a temporary coverage value where each bit is determined by the | |
146 | alpha value at the corresponding sample location. The temporary coverage | |
147 | value is then ANDed with the fragment coverage value. | |
148 | </p></dd><dt><span class="term"><code class="constant">GL_SAMPLE_ALPHA_TO_ONE</code></span></dt><dd><p> | |
149 | </p><p> | |
150 | If enabled, | |
151 | each sample alpha value is replaced by the maximum representable alpha value. | |
152 | </p></dd><dt><span class="term"><code class="constant">GL_SAMPLE_COVERAGE</code></span></dt><dd><p> | |
153 | </p><p> | |
154 | If enabled, | |
155 | the fragment's coverage is ANDed with the temporary coverage value. If | |
156 | <code class="constant">GL_SAMPLE_COVERAGE_INVERT</code> is set to <code class="constant">GL_TRUE</code>, invert the coverage | |
157 | value. | |
158 | See <a href="glSampleCoverage.xml"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>. | |
159 | </p></dd><dt><span class="term"><code class="constant">GL_SAMPLE_SHADING</code></span></dt><dd><p> | |
160 | </p><p> | |
161 | If enabled, the active fragment shader is run once for each covered sample, or at | |
162 | fraction of this rate as determined by the current value of <code class="constant">GL_MIN_SAMPLE_SHADING_VALUE</code>. | |
163 | See <a href="glMinSampleShading.xml"><span class="citerefentry"><span class="refentrytitle">glMinSampleShading</span></span></a>. | |
164 | </p></dd><dt><span class="term"><code class="constant">GL_SAMPLE_MASK</code></span></dt><dd><p> | |
165 | </p><p> | |
166 | If enabled, the sample coverage mask generated for a fragment during rasterization | |
167 | will be ANDed with the value of <code class="constant">GL_SAMPLE_MASK_VALUE</code> before | |
168 | shading occurs. | |
169 | See <a href="glSampleMaski.xml"><span class="citerefentry"><span class="refentrytitle">glSampleMaski</span></span></a>. | |
170 | </p></dd><dt><span class="term"><code class="constant">GL_SCISSOR_TEST</code></span></dt><dd><p> | |
171 | </p><p> | |
172 | If enabled, | |
173 | discard fragments that are outside the scissor rectangle. | |
174 | See <a href="glScissor.xml"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>. | |
175 | </p></dd><dt><span class="term"><code class="constant">GL_STENCIL_TEST</code></span></dt><dd><p> | |
176 | </p><p> | |
177 | If enabled, | |
178 | do stencil testing and update the stencil buffer. | |
179 | See <a href="glStencilFunc.xml"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a> and <a href="glStencilOp.xml"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>. | |
180 | </p></dd><dt><span class="term"><code class="constant">GL_TEXTURE_CUBE_MAP_SEAMLESS</code></span></dt><dd><p> | |
181 | </p><p> | |
182 | If enabled, cubemap textures are sampled such that when linearly sampling from the border | |
183 | between two adjacent faces, texels from both faces are used to generate the final sample | |
184 | value. When disabled, texels from only a single face are used to construct the final | |
185 | sample value. | |
186 | </p></dd><dt><span class="term"><code class="constant">GL_PROGRAM_POINT_SIZE</code></span></dt><dd><p> | |
187 | </p><p> | |
188 | If enabled | |
189 | and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin | |
190 | <code class="constant">gl_PointSize</code> and clamped to the implementation-dependent point size range. | |
191 | </p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="errors"></a><h2>Errors</h2><p> | |
192 | <code class="constant">GL_INVALID_ENUM</code> is generated if <em class="parameter"><code>cap</code></em> is not one of the values | |
193 | listed previously. | |
194 | </p><p> | |
195 | <code class="constant">GL_INVALID_VALUE</code> is generated by <code class="function">glEnablei</code> and <code class="function">glDisablei</code> | |
196 | if <em class="parameter"><code>index</code></em> is greater than or equal to the number of indexed capabilities for <em class="parameter"><code>cap</code></em>. | |
197 | </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="notes"></a><h2>Notes</h2><p> | |
198 | <code class="constant">GL_PRIMITIVE_RESTART</code> is available only if the GL version is 3.1 or greater. | |
199 | </p><p> | |
200 | <code class="constant">GL_TEXTURE_CUBE_MAP_SEAMLESS</code> is available only if the GL version is 3.2 or greater. | |
201 | </p><p> | |
202 | <code class="constant">GL_PRIMITIVE_RESTART_FIXED_INDEX</code> is available only if the GL version is 4.3 or greater. | |
203 | </p><p> | |
204 | <code class="constant">GL_DEBUG_OUTPUT</code> and <code class="constant">GL_DEBUG_OUTPUT_SYNCHRONOUS</code> are available only if the GL version is 4.3 or greater. | |
205 | </p><p> | |
206 | Any token accepted by <code class="function">glEnable</code> or <code class="function">glDisable</code> is also accepted by | |
207 | <code class="function">glEnablei</code> and <code class="function">glDisablei</code>, but if the capability is not indexed, | |
208 | the maximum value that <em class="parameter"><code>index</code></em> may take is zero. | |
209 | </p><p> | |
210 | In general, passing an indexed capability to <code class="function">glEnable</code> or <code class="function">glDisable</code> | |
211 | will enable or disable that capability for all indices, resepectively. | |
212 | </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="associatedgets"></a><h2>Associated Gets</h2><p> | |
213 | <a href="glIsEnabled.xml"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a> | |
214 | </p><p> | |
215 | <a href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> | |
216 | </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="seealso"></a><h2>See Also</h2><p> | |
217 | <a href="glActiveTexture.xml"><span class="citerefentry"><span class="refentrytitle">glActiveTexture</span></span></a>, | |
218 | <a href="glBlendFunc.xml"><span class="citerefentry"><span class="refentrytitle">glBlendFunc</span></span></a>, | |
219 | <a href="glCullFace.xml"><span class="citerefentry"><span class="refentrytitle">glCullFace</span></span></a>, | |
220 | <a href="glDepthFunc.xml"><span class="citerefentry"><span class="refentrytitle">glDepthFunc</span></span></a>, | |
221 | <a href="glDepthRange.xml"><span class="citerefentry"><span class="refentrytitle">glDepthRange</span></span></a>, | |
222 | <a href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a>, | |
223 | <a href="glIsEnabled.xml"><span class="citerefentry"><span class="refentrytitle">glIsEnabled</span></span></a>, | |
224 | <a href="glLineWidth.xml"><span class="citerefentry"><span class="refentrytitle">glLineWidth</span></span></a>, | |
225 | <a href="glLogicOp.xml"><span class="citerefentry"><span class="refentrytitle">glLogicOp</span></span></a>, | |
226 | <a href="glPointSize.xml"><span class="citerefentry"><span class="refentrytitle">glPointSize</span></span></a>, | |
227 | <a href="glPolygonMode.xml"><span class="citerefentry"><span class="refentrytitle">glPolygonMode</span></span></a>, | |
228 | <a href="glPolygonOffset.xml"><span class="citerefentry"><span class="refentrytitle">glPolygonOffset</span></span></a>, | |
229 | <a href="glSampleCoverage.xml"><span class="citerefentry"><span class="refentrytitle">glSampleCoverage</span></span></a>, | |
230 | <a href="glScissor.xml"><span class="citerefentry"><span class="refentrytitle">glScissor</span></span></a>, | |
231 | <a href="glStencilFunc.xml"><span class="citerefentry"><span class="refentrytitle">glStencilFunc</span></span></a>, | |
232 | <a href="glStencilOp.xml"><span class="citerefentry"><span class="refentrytitle">glStencilOp</span></span></a>, | |
233 | <a href="glTexImage1D.xml"><span class="citerefentry"><span class="refentrytitle">glTexImage1D</span></span></a>, | |
234 | <a href="glTexImage2D.xml"><span class="citerefentry"><span class="refentrytitle">glTexImage2D</span></span></a>, | |
235 | <a href="glTexImage3D.xml"><span class="citerefentry"><span class="refentrytitle">glTexImage3D</span></span></a> | |
236 | </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="Copyright"></a><h2>Copyright</h2><p> | |
237 | Copyright <span class="trademark"></span>© 1991-2006 | |
238 | Silicon Graphics, Inc. Copyright <span class="trademark"></span>© 2010-2011 Khronos Group. | |
239 | This document is licensed under the SGI | |
240 | Free Software B License. For details, see | |
241 | <a href="http://oss.sgi.com/projects/FreeB/" target="_top">http://oss.sgi.com/projects/FreeB/</a>. | |
242 | </p></div></div></body></html> |