Back to the OpenGL extension cross reference

GL_EXT_misc_attribute


Name


    EXT_misc_attribute

Name Strings


    GL_EXT_misc_attribute

Version


    $Date: 1999/04/03 08:40:56 $ $Revision: 1.5 $

Number


    31

Dependencies


    None

Overview


    EXT_misc_attribute extends the list of attribute groups. It provides
a miscellaneous group, controlled by the MISC_BIT_EXT bit, that contains
the attribute state of extensions that don't logically fit in any other
group.

Reasoning


    In general, an extension's attributes are assigned to a similar
attribute group. If an extension is developed that doesn't fit in
any of the GL's existing attribute groups, the extension's attributes
should be added to the miscellaneous group.

The GL sample implementation incorrectly checks the bits in
the <mask> argument to PushAttrib and glXCopyContext,
generating an error if any unused bits are set. This
behavior causes interoperability problems between GLs with
different sets of attribute groups. This error checking
should be removed from all implementations. The reference
to this error checking should also be removed from the GLX
specification.

Because of the bit checking described above, ALL_ATTRIB_BITS
can't include MISC_BIT_EXT without risking GL interoperability
problems. Not including MISC_BIT_EXT changes the semantics of
ALL_ATTRIB_BITS, but is considered the lesser of two evils.
These problems should be fixed in the next GL version.

New Procedures and Functions


    None

New Tokens


    MISC_BIT_EXT

Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation)


    None

Additions to Chapter 3 of the 1.0 Specification (Rasterization)


    None

Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations and the Frame Buffer)


    None

Additions to Chapter 5 of the 1.0 Specification (Special Functions)


    None

Additions to Chapter 6 of the 1.0 Specification (State and State Requests)


    The command

void PushAttrib(bitfield mask)

takes a bitwise OR of symbolic constants indicating which groups of
state variables to push onto an attribute stack. Each constant refers
to a group of state variables. The single symbolic constant
GL_ALL_ATTRIB_BITS can be used to copy all of the attribute groups defined
by the core GL. Additional extension attribute groups cannot be copied
using GL_ALL_ATTRIB_BITS. To copy these groups, check to see that the GL
implementation supports the extension, then use a bitwise OR to set
the appropriate bit(s) in <mask>.


(Table 6.1 (Attribute Groups).)

Attribute Constant ALL_ATTRIB_BITS
--------- -------- ---------------

accum-buffer ACCUM_BUFFER_BIT yes
color-buffer COLOR_BUFFER_BIT yes
current CURRENT_BIT yes
depth-buffer DEPTH_BUFFER_BIT yes
enable ENABLE_BIT yes
eval EVAL_BIT yes
fog FOG_BIT yes
hint HINT_BIT yes
lighting LIGHTING_BIT yes
line LINE_BIT yes
list LIST_BIT yes
pixel PIXEL_MODE_BIT yes
point POINT_BIT yes
polygon POLYGON_BIT yes
polygon-stipple POLYGON_STIPPLE_BIT yes
scissor SCISSOR_BIT yes
stencil-buffer STENCIL_BUFFER_BIT yes
texture TEXTURE_BIT yes
transform TRANSFORM_BIT yes
viewport VIEWPORT_BIT yes
miscellaneous MISC_BIT_EXT no
- ALL_ATTRIB_BITS -


Additions to the GLX Specification


(In the glXCopyContext description)

The single symbolic constant GL_ALL_ATTRIB_BITS can be used to
copy all of the attribute groups defined by the core GL. Additional
extension attribute groups can not be copied using GL_ALL_ATTRIB_BITS.
To copy these groups, check to see that the GL implementation supports
the extension, then use a bitwise OR to set the appropriate bit(s) in
<mask>.

Errors


    None

New State


    None

New Implementation Dependent State


    None

Implementation Support


   List of OpenGL implementations supporting the GL_EXT_misc_attribute extension

Original File


   Original text file for the GL_EXT_misc_attribute extension


Page generated on Sun Nov 20 18:37:31 2005