fglEnable(3G) OpenGL Reference fglEnable(3G)NAME
fglEnable, fglDisable - enable or disable server-side GL capabilities
FORTRAN SPECIFICATION
SUBROUTINE fglEnable( INTEGER*4 cap )
PARAMETERS
cap Specifies a symbolic constant indicating a GL capability.
FORTRAN SPECIFICATION
SUBROUTINE fglDisable( INTEGER*4 cap )
PARAMETERS
cap Specifies a symbolic constant indicating a GL capability.
DESCRIPTION
fglEnable and fglDisable enable and disable various capabilities. Use
fglIsEnabled or fglGet to determine the current setting of any
capability. The initial value for each capability with the exception of
GL_DITHER is GL_FALSE. The initial value for GL_DITHER is GL_TRUE.
Both fglEnable and fglDisable take a single argument, cap, which can
assume one of the following values:
GL_ALPHA_TEST If enabled, do alpha testing. See fglAlphaFunc.
GL_ASYNC_DRAW_PIXELS_SGIX
If enabled, allow subsequent fglDrawPixels
commands to operate in asynchronous mode. See
fglDrawPixels.
GL_ASYNC_READ_PIXELS_SGIX
If enabled, allow subsequent fglReadPixels
commands to operate in asynchronous mode. See
fglReadPixels.
GL_ASYNC_TEX_IMAGE_SGIX If enabled, allow subsequent fglTexImage
commands to operate in asynchronous mode. See
fglTexImage1D, fglTexImage2D, fglTexImage3D,
fglTexSubImage1D, fglTexSubImage2D, and
fglTexSubImage3D.
GL_AUTO_NORMAL If enabled, generate normal vectors when either
GL_MAP2_VERTEX_3 or GL_MAP2_VERTEX_4 is used to
generate vertices. See fglMap2.
GL_BLEND If enabled, blend the incoming RGBA color values
with the values in the color buffers. See
fglBlendFunc.
Page 1
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_CALLIGRAPHIC_FRAGMENT_SGIX
If enabled, send fragment information to the
calligraphic interface as fragments are written
to the color buffer(s).
GL_CLIP_PLANEi If enabled, clip geometry against user-defined
clipping plane i. See fglClipPlane.
GL_COLOR_ARRAY_EXT If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer colors from the
array supplied to fglColorPointerEXT. See
fglColorPointerEXT.
GL_COLOR_LOGIC_OP If enabled, apply the currently selected logical
operation to the incoming RGBA color and color
buffer values. See fglLogicOp.
GL_COLOR_MATERIAL If enabled, have one or more material parameters
track the current color. See fglColorMaterial.
GL_COLOR_TABLE If enabled, preform a color table lookup on the
incoming RGBA color values. See fglColorTable.
GL_CONVOLUTION_1D If enabled, perform a 1D convolution operation
on incoming RGBA color values. See
fglConvolutionFilter1D.
GL_CONVOLUTION_2D If enabled, perform a 2D convolution operation
on incoming RGBA color values. See
fglConvolutionFilter2D.
GL_CULL_FACE If enabled, cull polygons based on their winding
in window coordinates. See fglCullFace.
GL_DEPTH_TEST 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 fglDepthFunc and fglDepthRange.
GL_DITHER If enabled, dither color components or indices
before they are written to the color buffer.
GL_EDGE_FLAG_ARRAY_EXT If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer edge flags from
the array supplied to fglEdgeFlagPointerEXT.
See fglEdgeFlagPointerEXT.
GL_FOG If enabled, blend a fog color into the
posttexturing color. See fglFog.
Page 2
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_FOG_OFFSET_SGIX If enabled, apply an offset to the Z value used
for computing fog. See fglFog.
GL_FRAGMENT_COLOR_MATERIAL_SGIX
If enabled, have one or more fragment material
parameters track the current color. See
fglFragmentColorMaterial.
GL_FRAGMENT_LIGHTi_SGIX If enabled, include fragment light i in the
evaluation of the lighting equation. See
fglFragmentLightModel and fglFragmentLight.
GL_FRAGMENT_LIGHTING_SGIX
If enabled, use the current fragment lighting
parameters to compute the fragment color or
index. Otherwise, simply interpolate the vertex
colors or indices across the fragment. See
fglFragmentMaterial, fglFragmentLightModel, and
fglFragmentLight.
GL_HISTOGRAM If enabled, histogram incoming RGBA color
values. See fglHistogram.
GL_INDEX_ARRAY_EXT If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer color indices
from the array supplied to fglIndexPointerEXT.
See fglIndexPointerEXT.
GL_INDEX_LOGIC_OP If enabled, apply the currently selected logical
operation to the incoming index and color buffer
indices. See fglLogicOp.
GL_INTERLACE_SGIX If enabled, modifies the behavior of
fglDrawPixels, fglCopyPixels, fglTexImage2D,
fglTexSubImage2DEXT, fglCopyTexImage2DEXT and
fglCopyTexSubImage2DEXT, such that the source
image is considered to be a field of an
"interlaced" frame. That is, the effective
source image has height equal to twice the
original height, with rows $(0,2,4,...)$
corresponding to rows $(0,1,2,...)$ of original
source image, and rows $(1,3,5,...)$ made of
"transparent" pixels that do not affect the
corresponding destination pixels in the target
image. Thus, two successive operations can be
used to assemble a complete frame by interlacing
two fields. See the reference pages for the
above commands for more details.
GL_INTERLACE_READ_INGR If enabled, modifies the behavior of
fglReadPixels, fglCopyPixels,
fglCopyTexImage2DEXT and
Page 3
fglEnable(3G) OpenGL Reference fglEnable(3G)
fglCopyTexSubImage2DEXT. The pixels that are
read or copied represent one field of an
interlaced frame. The source image height in
the framebuffer is equivalent to twice the
specified height. Source rows $(0,2,4,...)$
correspond to rows $(0,1,2,...)$ in the
destination or intermediate copy image. Rows
$(1,3,5,...)$ of the source image are skipped.
Two successive operations can be used to extract
a pair of interlace fields from an interlaced
image in the framebuffer. See the reference
pages for the above commands for more details.
GL_IR_INSTRUMENT1_SGIX If enabled, allows the gathering of instrument
measurements that can be used to identify
graphics pipeline bottlenecks. See the reference
pages for fglFlushRasterSGIX,
fglGetInstrumentsSGIX, fglInstrumentsBufferSGIX,
fglPollInstrumentsSGIX, fglReadInstrumentsSGIX,
fglStartInstrumentsSGIX, and
fglStopInstrumentsSGIX for more details.
GL_LIGHTi If enabled, include light i in the evaluation of
the lighting equation. See fglLightModel and
fglLight.
GL_LIGHTING If enabled, use the current lighting parameters
to compute the vertex color or index.
Otherwise, simply associate the current color or
index with each vertex. See fglMaterial,
fglLightModel, and fglLight.
GL_LINE_SMOOTH If enabled, draw lines with correct filtering.
Otherwise, draw aliased lines. See
fglLineWidth.
GL_LINE_STIPPLE If enabled, use the current line stipple pattern
when drawing lines. See fglLineStipple.
GL_MAP1_COLOR_4 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate RGBA
values. See fglMap1.
GL_MAP1_INDEX If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate color
indices. See fglMap1.
GL_MAP1_NORMAL If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate
normals. See fglMap1.
Page 4
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_MAP1_TEXTURE_COORD_1 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate s
texture coordinates. See fglMap1.
GL_MAP1_TEXTURE_COORD_2 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate s and t
texture coordinates. See fglMap1.
GL_MAP1_TEXTURE_COORD_3 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate s, t,
and r texture coordinates. See fglMap1.
GL_MAP1_TEXTURE_COORD_4 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate s, t,
r, and q texture coordinates. See fglMap1.
GL_MAP1_VERTEX_3 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate x, y,
and z vertex coordinates. See fglMap1.
GL_MAP1_VERTEX_4 If enabled, calls to fglEvalCoord1,
fglEvalMesh1, and fglEvalPoint1 generate
homogeneous x, y, z, and w vertex coordinates.
See fglMap1.
GL_MAP2_COLOR_4 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate RGBA
values. See fglMap2.
GL_MAP2_INDEX If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate color
indices. See fglMap2.
GL_MAP2_NORMAL If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate
normals. See fglMap2.
GL_MAP2_TEXTURE_COORD_1 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate s
texture coordinates. See fglMap2.
GL_MAP2_TEXTURE_COORD_2 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate s and t
texture coordinates. See fglMap2.
GL_MAP2_TEXTURE_COORD_3 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate s, t,
and r texture coordinates. See fglMap2.
GL_MAP2_TEXTURE_COORD_4 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate s, t,
r, and q texture coordinates. See fglMap2.
Page 5
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_MAP2_VERTEX_3 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate x, y,
and z vertex coordinates. See fglMap2.
GL_MAP2_VERTEX_4 If enabled, calls to fglEvalCoord2,
fglEvalMesh2, and fglEvalPoint2 generate
homogeneous x, y, z, and w vertex coordinates.
See fglMap2.
GL_MINMAX If enabled, compute the minimum and maximum
values of incoming RGBA color values. See
fglMinmax.
GL_MULTISAMPLE_SGIS If enabled, perform multisampling of fragments
for single-pass antialiasing and other effects.
See fglSampleMaskSGIS and fglSamplePatternSGIS.
GL_NORMAL_ARRAY_EXT If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer surface normals
from the array supplied to fglNormalPointerEXT.
See fglNormalPointerEXT.
GL_NORMALIZE If enabled, normal vectors specified with
fglNormal are scaled to unit length after
transformation. See fglNormal.
GL_PIXEL_TEX_GEN_SGIX If enabled, pixels drawn with fglDrawPixels and
fglCopyPixels are individually texture-mapped at
texture coordinates derived from each pixel's
color components. See fglPixelTexGenSGIX.
GL_PIXEL_TEXTURE_SGIS If enabled, pixels drawn with fglDrawPixels and
fglCopyPixels are individually texture-mapped at
texture coordinates derived from color
components. See fglPixelTexGenParameterSGIS.
GL_POINT_SMOOTH If enabled, draw points with proper filtering.
Otherwise, draw aliased points. See
fglPointSize.
GL_POLYGON_OFFSET_FILL If enabled, and if the polygon is rendered in
GL_FILL mode, an offset is added to depth values
of a polygon's fragments before the depth
comparison is performed. See fglPolygonOffset.
GL_POLYGON_OFFSET_LINE If enabled, and if the polygon is rendered in
GL_LINE mode, an offset is added to depth values
of a polygon's fragments before the depth
comparison is performed. See fglPolygonOffset.
Page 6
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_POLYGON_OFFSET_POINT If enabled, an offset is added to depth values
of a polygon's fragments before the depth
comparison is performed, if the polygon is
rendered in GL_POINT mode. See fglPolygonOffset.
GL_POLYGON_SMOOTH If enabled, draw polygons with proper filtering.
Otherwise, draw aliased polygons. For correct
anti-aliased polygons, an alpha buffer is needed
and the polygons must be sorted front to back.
GL_POLYGON_STIPPLE If enabled, use the current polygon stipple
pattern when rendering polygons. See
fglPolygonStipple.
GL_POST_COLOR_MATRIX_COLOR_TABLE
If enabled, preform a color table lookup on RGBA
color values after color matrix transformation.
See fglColorTable.
GL_POST_CONVOLUTION_COLOR_TABLE
If enabled, preform a color table lookup on RGBA
color values after convolution. See
fglColorTable.
GL_REFERENCE_PLANE_SGIX If enabled, depth values for pixel fragments are
computed from a reference plane rather than from
the primitive being drawn. See
fglReferencePlaneSGIX.
GL_SAMPLE_ALPHA_TO_MASK_SGIS
If enabled, convert fragment alpha values to
multisample coverage modification masks. See
fglSampleMaskSGIS.
GL_SAMPLE_ALPHA_TO_ONE_SGIS
If enabled, set fragment alpha to the maximum
permissible value after computing multisample
coverage modification masks. See
fglSampleMaskSGIS.
GL_SAMPLE_MASK_SGIS If enabled, apply a mask to modify fragment
coverage during multisampling. See
fglSampleMaskSGIS.
GL_RESCALE_NORMAL If enabled, normal vectors specified with
fglNormal are scaled to unit length after
transformation. See fglNormal.
GL_SEPARABLE_2D If enabled, perform a two-dimensional
convolution operation using a separable
convolution filter on incoming RGBA color
values. See fglSeparableFilter2D.
Page 7
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_SCISSOR_TEST If enabled, discard fragments that are outside
the scissor rectangle. See fglScissor.
GL_SEPARABLE_2D_EXT If enabled, perform separable two-dimensional
convolution during pixel transfers. See
fglSeparableFilter2DEXT.
GL_SPRITE_SGIX If enabled, rotate geometry to face the viewer.
See fglSpriteParameterSGIX.
GL_STENCIL_TEST If enabled, do stencil testing and update the
stencil buffer. See fglStencilFunc and
fglStencilOp.
GL_TEXTURE_1D If enabled, one-dimensional texturing is
performed (unless two- or three-dimensional
texturing is also enabled). See fglTexImage1D.
GL_TEXTURE_2D If enabled, two-dimensional texturing is
performed (unless three-dimensional texturing is
also enabled). See fglTexImage2D.
GL_TEXTURE_3D If enabled, three-dimensional texturing is
performed. See fglTexImage3D.
GL_TEXTURE_COLOR_TABLE_SGI
If enabled, the colors produced by texturing are
mapped by a lookup table before being used to
generate pixel fragments. See fglColorTableSGI.
GL_TEXTURE_COORD_ARRAY_EXT
If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer texture
coordinates from the array supplied to
fglTexCoordPointerEXT. See
fglTexCoordPointerEXT.
GL_TEXTURE_GEN_Q If enabled, the q texture coordinate is computed
using the texture generation function defined
with fglTexGen. Otherwise, the current q
texture coordinate is used. See fglTexGen.
GL_TEXTURE_GEN_R If enabled, the r texture coordinate is computed
using the texture generation function defined
with fglTexGen. Otherwise, the current r
texture coordinate is used. See fglTexGen.
GL_TEXTURE_GEN_S If enabled, the s texture coordinate is computed
using the texture generation function defined
with fglTexGen. Otherwise, the current s
texture coordinate is used. See fglTexGen.
Page 8
fglEnable(3G) OpenGL Reference fglEnable(3G)
GL_TEXTURE_GEN_T If enabled, the t texture coordinate is computed
using the texture generation function defined
with fglTexGen. Otherwise, the current t
texture coordinate is used. See fglTexGen.
GL_VERTEX_ARRAY_EXT If enabled, fglArrayElementEXT and
fglDrawArraysEXT will transfer vertex
coordinates from the array supplied to
fglVertexPointerEXT. See fglVertexPointerEXT.
GL_VERTEX_PRECLIP_SGIX If enabled, vertex data will be preprocessed,
and if necessary the vertices will be
preclipped, in order to enhance the precision of
parameter interpolation over the area of the
primitive.
NOTES
GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, GL_POLYGON_OFFSET_POINT,
GL_COLOR_LOGIC_OP, and GL_INDEX_LOGIC_OP are available only if the GL
version is 1.1 or greater.
GL_RESCALE_NORMAL, and GL_TEXTURE_3D are available only if the GL version
is 1.2 or greater.
GL_COLOR_TABLE, GL_CONVOLUTION_1D, GL_CONVOLUTION_2D, GL_HISTOGRAM,
GL_MINMAX, GL_POST_COLOR_MATRIX_COLOR_TABLE,
GL_POST_CONVOLUTION_COLOR_TABLE, and GL_SEPARABLE_2D are available only
if GL_ARB_imaging is returned from fglGet with an argument of
GL_EXTENSIONS.
ERRORS
GL_INVALID_ENUM is generated if cap is not one of the values listed
previously.
GL_INVALID_OPERATION is generated if fglEnable or fglDisable is executed
between the execution of fglBegin and the corresponding execution of
fglEnd.
MACHINE DEPENDENCIES
The SGIX_async and SGIX_async_pixel extensions are implemented only on
Octane2 VPro systems.
GL_COLOR_TABLE_SGI, GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI and
GL_POST_CONVOLUTION_COLOR_TABLE_SGI are part of the SGI_color_table
extension which is not supported on RealityEngine, RealityEngine2, and
VTX systems.
The SGIX_fragment_lighting extension is supported only on Octane2 VPro
systems.
Page 9
fglEnable(3G) OpenGL Reference fglEnable(3G)
On Octane2 VPro systems, fglLightModel with GL_SEPARATE_SPECULAR_COLOR is
not compatible with fragment lighting. If fragment lighting is enabled,
it will override the separate specular color light model.
The SGIX_interlace extension is supported only on InfiniteReality
systems, on RealityEngine, RealityEngine2, and VTX systems, on Octane2
VPro systems, and on O2 systems.
The INGR_interlace_read extension is supported only on Octane2 VPro
systems, and on O2 systems.
GL_PIXEL_TEXTURE_SGIS is part of the SGIS_pixel_texture extension, which
is supported only on Octane2 VPro systems.
On Octane2 VPro systems, use of the texture q coordinate to achieve
projective texture effects will be processed on a per-vertex basis
instead of a per-pixel basis, unless the texture matrix is set up to be
projective. (A projective texture matrix, specified as 16-element array
M, is defined to be one in which any of the M[3], M[7], or M[11] array
elements is non-zero.) In addition, if either two-sided lighting or
fragment lighting or separate specular lighting is in effect, projective
texture effects will always be processed on a per-vertex basis.
On RealityEngine, RealityEngine2, and VTX systems, do not enable or
disable GL_VERTEX_ARRAY, GL_VERTEX_ARRAY_EXT, GL_NORMAL_ARRAY,
GL_NORMAL_ARRAY_EXT, GL_COLOR_ARRAY, GL_COLOR_ARRAY_EXT,
GL_INDEX_ARRAY,GL_INDEX_ARRAY_EXT, GL_TEXTURE_COORD_ARRAY,
GL_TEXTURE_COORD_ARRAY_EXT, GL_EDGE_FLAG_ARRAY or GL_EDGE_FLAG_ARRAY_EXT
between a call to fglNewList and the corresponding call to fglEndList.
Instead, enable or disable before the call to fglNewList.
The SGIX_vertex_preclip extension is supported only on Octane2 VPro
systems.
SEE ALSO
fglAlphaFunc, fglBlendFunc, fglClipPlane, fglColorMaterial, fglCullFace,
fglDepthFunc, fglDepthRange, fglEnableClientState, fglFog,
fglFragmentColorMaterial, fglFragmentLight, fglFragmentLightModel,
fglFragmentMaterial, fglGet, fglIsEnabled, fglLight, fglLightModel,
fglLineWidth, fglLineStipple, fglLogicOp, fglMap1, fglMap2, fglMaterial,
fglNormal, fglPixelTexGenParameterSGIS, fglPointSize, fglPolygonMode,
fglPolygonOffset, fglPolygonStipple, fglReferencePlaneSGIX, fglScissor,
fglStencilFunc, fglStencilOp, fglTexGen, fglTexImage1D, fglTexImage2D,
fglTexImage3D
Page 10