X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=enum.spec;fp=enum.spec;h=3ad4cfa5df9aff7d8d922da836ad64500ebdbd06;hb=49f8063ce156a50d4b3b8c77a1508a21ea2bfe90;hp=0000000000000000000000000000000000000000;hpb=2e4973ec66cd8ae12d4253e3c3ad9e36a8a4bca6;p=gldbg.git diff --git a/enum.spec b/enum.spec new file mode 100644 index 0000000..3ad4cfa --- /dev/null +++ b/enum.spec @@ -0,0 +1,7473 @@ +# This is the OpenGL and OpenGL ES enumerant registry. +# +# It is an extremely important file. Do not mess with it unless +# you know what you're doing and have permission to do so. +# +############################################################################### +# +# Before modifying this file, read the following: +# +# ONLY the Khronos API Registrar (Jon Leech, jon 'at' alumni.caltech.edu) +# may allocate new enumerants outside the 'experimental' range described +# below. Any modifications to this file not performed by the Registrar +# are incompatible with the OpenGL API. The master copy of the registry, +# showing up-to-date enumerant allocations, is maintained in the +# OpenGL registry at +# +# http://www.opengl.org/registry/ +# +# The following guidelines are thus only for reference purposes +# (unless you're the Registrar) +# +# Enumerant values for extensions CANNOT be chosen arbitrarily, since +# the enumerant value space is shared by all GL implementations. It is +# therefore imperative that the procedures described in this file be +# followed carefully when allocating extension enum values. +# +# - Use tabs, not spaces. +# +# - When adding enum values for a new extension, use existing extensions +# as a guide. +# +# - When a vendor has committed to releasing a new extension and needs to +# allocate enum values for that extension, the vendor may request that the +# ARB allocate a previously unallocated block of 16 enum values, in the +# range 0x8000-0xFFFF, for the vendor's exclusive use. +# +# - The vendor that introduces an extension will allocate enum values for +# it as if it is a single-vendor extension, even if it is a multi-vendor +# (EXT) extension. +# +# - The file enum.spec is primarily a reference. The file enumext.spec +# contains enumerants for all OpenGL 1.2 and OpenGL extensions in a form +# used to generate . +# +# - If a vendor hasn't yet released an extension, just add a comment to +# enum.spec that contains the name of the extension and the range of enum +# values used by the extension. When the vendor releases the extension, +# put the actual enum assignments in enum.spec and enumext.spec. +# +# - Allocate all of the enum values for an extension in a single contiguous +# block. +# +# - If an extension is experimental, allocate temporary enum values in the +# range 0x6000-0x8000 during development work. When the vendor commits to +# releasing the extension, allocate permanent enum values (see below). +# There are two reasons for this policy: +# +# 1. It is desirable to keep extension enum values tightly packed and to +# make all of the enum values for an extension be contiguous. This is +# possible only if permanent enum values for a new extension are not +# allocated until the extension spec is stable and the number of new +# enum values needed by the extension has therefore stopped changing. +# +# 2. OpenGL ARB policy is that a vendor may allocate a new block of 16 +# extension enum values only if it has committed to releasing an +# extension that will use values in that block. +# +# - To allocate a new block of permanent enum values for an extension, do the +# following: +# +# 1. Start at the top of enum.spec and choose the first future_use +# range that is not allocated to another vendor and is large enough +# to contain the new block. This will almost certainly be the +# 'Any_vendor_future_use' range near the end of enum.spec. This +# process helps keep allocated enum values tightly packed into +# the start of the 0x8000-0xFFFF range. +# +# 2. Allocate a block of enum values at the start of this range. If +# the enum definitions are going into enumfuture.spec, add a comment +# to enum.spec that contains the name of the extension and the range +# of values in the new block. Use existing extensions as a guide. +# +# 3. Add the size of the block you just allocated to the start of the +# chosen future_use range. If you have allocated the entire range, +# eliminate its future_use entry. +# +# 4. Note that there are historical enum allocations above 0xFFFF, but +# no new allocations will be made there in the forseeable future. +# +############################################################################### + +Extensions define: + VERSION_1_1 = 1 + VERSION_1_2 = 1 + VERSION_1_3 = 1 + VERSION_1_4 = 1 + VERSION_1_5 = 1 + VERSION_2_0 = 1 + VERSION_2_1 = 1 + VERSION_3_0 = 1 + VERSION_3_1 = 1 + VERSION_3_2 = 1 + ARB_imaging = 1 + EXT_abgr = 1 + EXT_blend_color = 1 + EXT_blend_logic_op = 1 + EXT_blend_minmax = 1 + EXT_blend_subtract = 1 + EXT_cmyka = 1 + EXT_convolution = 1 + EXT_copy_texture = 1 + EXT_histogram = 1 + EXT_packed_pixels = 1 + EXT_point_parameters = 1 + EXT_polygon_offset = 1 + EXT_rescale_normal = 1 + EXT_shared_texture_palette = 1 + EXT_subtexture = 1 + EXT_texture = 1 + EXT_texture3D = 1 + EXT_texture_object = 1 + EXT_vertex_array = 1 + SGIS_detail_texture = 1 + SGIS_fog_function = 1 + SGIS_generate_mipmap = 1 + SGIS_multisample = 1 + SGIS_pixel_texture = 1 + SGIS_point_line_texgen = 1 + SGIS_point_parameters = 1 + SGIS_sharpen_texture = 1 + SGIS_texture4D = 1 + SGIS_texture_border_clamp = 1 + SGIS_texture_edge_clamp = 1 + SGIS_texture_filter4 = 1 + SGIS_texture_lod = 1 + SGIS_texture_select = 1 + SGIX_async = 1 + SGIX_async_histogram = 1 + SGIX_async_pixel = 1 + SGIX_blend_alpha_minmax = 1 + SGIX_calligraphic_fragment = 1 + SGIX_clipmap = 1 + SGIX_convolution_accuracy = 1 + SGIX_depth_texture = 1 + SGIX_flush_raster = 1 + SGIX_fog_offset = 1 + SGIX_fragment_lighting = 1 + SGIX_framezoom = 1 + SGIX_icc_texture = 1 + SGIX_impact_pixel_texture = 1 + SGIX_instruments = 1 + SGIX_interlace = 1 + SGIX_ir_instrument1 = 1 + SGIX_list_priority = 1 + SGIX_pixel_texture = 1 + SGIX_pixel_tiles = 1 + SGIX_polynomial_ffd = 1 + SGIX_reference_plane = 1 + SGIX_resample = 1 + SGIX_scalebias_hint = 1 + SGIX_shadow = 1 + SGIX_shadow_ambient = 1 + SGIX_sprite = 1 + SGIX_subsample = 1 + SGIX_tag_sample_buffer = 1 + SGIX_texture_add_env = 1 + SGIX_texture_coordinate_clamp = 1 + SGIX_texture_lod_bias = 1 + SGIX_texture_multi_buffer = 1 + SGIX_texture_scale_bias = 1 + SGIX_vertex_preclip = 1 + SGIX_ycrcb = 1 + SGI_color_matrix = 1 + SGI_color_table = 1 + SGI_texture_color_table = 1 + +############################################################################### + +AttribMask enum: + CURRENT_BIT = 0x00000001 + POINT_BIT = 0x00000002 + LINE_BIT = 0x00000004 + POLYGON_BIT = 0x00000008 + POLYGON_STIPPLE_BIT = 0x00000010 + PIXEL_MODE_BIT = 0x00000020 + LIGHTING_BIT = 0x00000040 + FOG_BIT = 0x00000080 + DEPTH_BUFFER_BIT = 0x00000100 + ACCUM_BUFFER_BIT = 0x00000200 + STENCIL_BUFFER_BIT = 0x00000400 + VIEWPORT_BIT = 0x00000800 + TRANSFORM_BIT = 0x00001000 + ENABLE_BIT = 0x00002000 + COLOR_BUFFER_BIT = 0x00004000 + HINT_BIT = 0x00008000 + EVAL_BIT = 0x00010000 + LIST_BIT = 0x00020000 + TEXTURE_BIT = 0x00040000 + SCISSOR_BIT = 0x00080000 + ALL_ATTRIB_BITS = 0xFFFFFFFF +#??? ALL_ATTRIB_BITS mask value changed to all-1s in OpenGL 1.3 - this affects covgl. +# use ARB_multisample MULTISAMPLE_BIT_ARB +# use EXT_multisample MULTISAMPLE_BIT_EXT +# use 3DFX_multisample MULTISAMPLE_BIT_3DFX + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + MULTISAMPLE_BIT = 0x20000000 + +ARB_multisample enum: + MULTISAMPLE_BIT_ARB = 0x20000000 + +EXT_multisample enum: + MULTISAMPLE_BIT_EXT = 0x20000000 + +3DFX_multisample enum: + MULTISAMPLE_BIT_3DFX = 0x20000000 + +############################################################################### + +ClearBufferMask enum: + use AttribMask COLOR_BUFFER_BIT + use AttribMask ACCUM_BUFFER_BIT + use AttribMask STENCIL_BUFFER_BIT + use AttribMask DEPTH_BUFFER_BIT + +############################################################################### + +ClientAttribMask enum: + CLIENT_PIXEL_STORE_BIT = 0x00000001 + CLIENT_VERTEX_ARRAY_BIT = 0x00000002 + CLIENT_ALL_ATTRIB_BITS = 0xFFFFFFFF + +############################################################################### + +# There's no obvious better place to put non-attribute-group mask bits +VERSION_3_0 enum: + use ARB_map_buffer_range MAP_READ_BIT + use ARB_map_buffer_range MAP_WRITE_BIT + use ARB_map_buffer_range MAP_INVALIDATE_RANGE_BIT + use ARB_map_buffer_range MAP_INVALIDATE_BUFFER_BIT + use ARB_map_buffer_range MAP_FLUSH_EXPLICIT_BIT + use ARB_map_buffer_range MAP_UNSYNCHRONIZED_BIT + +ARB_map_buffer_range enum: + MAP_READ_BIT = 0x0001 # VERSION_3_0 / ARB_mbr + MAP_WRITE_BIT = 0x0002 # VERSION_3_0 / ARB_mbr + MAP_INVALIDATE_RANGE_BIT = 0x0004 # VERSION_3_0 / ARB_mbr + MAP_INVALIDATE_BUFFER_BIT = 0x0008 # VERSION_3_0 / ARB_mbr + MAP_FLUSH_EXPLICIT_BIT = 0x0010 # VERSION_3_0 / ARB_mbr + MAP_UNSYNCHRONIZED_BIT = 0x0020 # VERSION_3_0 / ARB_mbr + +############################################################################### + +VERSION_3_0 enum: + CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x0001 # VERSION_3_0 + +############################################################################### + +Boolean enum: + FALSE = 0 + TRUE = 1 + +############################################################################### + +BeginMode enum: + POINTS = 0x0000 + LINES = 0x0001 + LINE_LOOP = 0x0002 + LINE_STRIP = 0x0003 + TRIANGLES = 0x0004 + TRIANGLE_STRIP = 0x0005 + TRIANGLE_FAN = 0x0006 + QUADS = 0x0007 + QUAD_STRIP = 0x0008 + POLYGON = 0x0009 + +VERSION_3_2 enum: + LINES_ADJACENCY = 0x000A + LINE_STRIP_ADJACENCY = 0x000B + TRIANGLES_ADJACENCY = 0x000C + TRIANGLE_STRIP_ADJACENCY = 0x000D + +ARB_geometry_shader4 enum: (additional; see below) + LINES_ADJACENCY_ARB = 0x000A + LINE_STRIP_ADJACENCY_ARB = 0x000B + TRIANGLES_ADJACENCY_ARB = 0x000C + TRIANGLE_STRIP_ADJACENCY_ARB = 0x000D + +NV_geometry_program4 enum: (additional; see below) + LINES_ADJACENCY_EXT = 0x000A + LINE_STRIP_ADJACENCY_EXT = 0x000B + TRIANGLES_ADJACENCY_EXT = 0x000C + TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D + +# BeginMode_future_use: 0x000E + +############################################################################### + +AccumOp enum: + ACCUM = 0x0100 + LOAD = 0x0101 + RETURN = 0x0102 + MULT = 0x0103 + ADD = 0x0104 + +############################################################################### + +AlphaFunction enum: + NEVER = 0x0200 + LESS = 0x0201 + EQUAL = 0x0202 + LEQUAL = 0x0203 + GREATER = 0x0204 + NOTEQUAL = 0x0205 + GEQUAL = 0x0206 + ALWAYS = 0x0207 + +############################################################################### + +BlendingFactorDest enum: + ZERO = 0 + ONE = 1 + SRC_COLOR = 0x0300 + ONE_MINUS_SRC_COLOR = 0x0301 + SRC_ALPHA = 0x0302 + ONE_MINUS_SRC_ALPHA = 0x0303 + DST_ALPHA = 0x0304 + ONE_MINUS_DST_ALPHA = 0x0305 + use EXT_blend_color CONSTANT_COLOR_EXT + use EXT_blend_color ONE_MINUS_CONSTANT_COLOR_EXT + use EXT_blend_color CONSTANT_ALPHA_EXT + use EXT_blend_color ONE_MINUS_CONSTANT_ALPHA_EXT + +############################################################################### + +BlendingFactorSrc enum: + use BlendingFactorDest ZERO + use BlendingFactorDest ONE + DST_COLOR = 0x0306 + ONE_MINUS_DST_COLOR = 0x0307 + SRC_ALPHA_SATURATE = 0x0308 + use BlendingFactorDest SRC_ALPHA + use BlendingFactorDest ONE_MINUS_SRC_ALPHA + use BlendingFactorDest DST_ALPHA + use BlendingFactorDest ONE_MINUS_DST_ALPHA + use EXT_blend_color CONSTANT_COLOR_EXT + use EXT_blend_color ONE_MINUS_CONSTANT_COLOR_EXT + use EXT_blend_color CONSTANT_ALPHA_EXT + use EXT_blend_color ONE_MINUS_CONSTANT_ALPHA_EXT + +############################################################################### + +BlendEquationModeEXT enum: + use GetPName LOGIC_OP + use EXT_blend_minmax FUNC_ADD_EXT + use EXT_blend_minmax MIN_EXT + use EXT_blend_minmax MAX_EXT + use EXT_blend_subtract FUNC_SUBTRACT_EXT + use EXT_blend_subtract FUNC_REVERSE_SUBTRACT_EXT + use SGIX_blend_alpha_minmax ALPHA_MIN_SGIX + use SGIX_blend_alpha_minmax ALPHA_MAX_SGIX + +############################################################################### + +ColorMaterialFace enum: + use DrawBufferMode FRONT + use DrawBufferMode BACK + use DrawBufferMode FRONT_AND_BACK + +############################################################################### + +ColorMaterialParameter enum: + use LightParameter AMBIENT + use LightParameter DIFFUSE + use LightParameter SPECULAR + use MaterialParameter EMISSION + use MaterialParameter AMBIENT_AND_DIFFUSE + +############################################################################### + +ColorPointerType enum: + use DataType BYTE + use DataType UNSIGNED_BYTE + use DataType SHORT + use DataType UNSIGNED_SHORT + use DataType INT + use DataType UNSIGNED_INT + use DataType FLOAT + use DataType DOUBLE + +############################################################################### + +ColorTableParameterPNameSGI enum: + use SGI_color_table COLOR_TABLE_SCALE_SGI + use SGI_color_table COLOR_TABLE_BIAS_SGI + +############################################################################### + +ColorTableTargetSGI enum: + use SGI_color_table COLOR_TABLE_SGI + use SGI_color_table POST_CONVOLUTION_COLOR_TABLE_SGI + use SGI_color_table POST_COLOR_MATRIX_COLOR_TABLE_SGI + use SGI_color_table PROXY_COLOR_TABLE_SGI + use SGI_color_table PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI + use SGI_color_table PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI + use SGI_texture_color_table TEXTURE_COLOR_TABLE_SGI + use SGI_texture_color_table PROXY_TEXTURE_COLOR_TABLE_SGI + +############################################################################### + +ConvolutionBorderModeEXT enum: + use EXT_convolution REDUCE_EXT + +############################################################################### + +ConvolutionParameterEXT enum: + use EXT_convolution CONVOLUTION_BORDER_MODE_EXT + use EXT_convolution CONVOLUTION_FILTER_SCALE_EXT + use EXT_convolution CONVOLUTION_FILTER_BIAS_EXT + +############################################################################### + +ConvolutionTargetEXT enum: + use EXT_convolution CONVOLUTION_1D_EXT + use EXT_convolution CONVOLUTION_2D_EXT + +############################################################################### + +CullFaceMode enum: + use DrawBufferMode FRONT + use DrawBufferMode BACK + use DrawBufferMode FRONT_AND_BACK + +############################################################################### + +DepthFunction enum: + use AlphaFunction NEVER + use AlphaFunction LESS + use AlphaFunction EQUAL + use AlphaFunction LEQUAL + use AlphaFunction GREATER + use AlphaFunction NOTEQUAL + use AlphaFunction GEQUAL + use AlphaFunction ALWAYS + +############################################################################### + +DrawBufferMode enum: + NONE = 0 + FRONT_LEFT = 0x0400 + FRONT_RIGHT = 0x0401 + BACK_LEFT = 0x0402 + BACK_RIGHT = 0x0403 + FRONT = 0x0404 + BACK = 0x0405 + LEFT = 0x0406 + RIGHT = 0x0407 + FRONT_AND_BACK = 0x0408 + AUX0 = 0x0409 + AUX1 = 0x040A + AUX2 = 0x040B + AUX3 = 0x040C + +# Aliases DrawBufferMode enum above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) +# NONE_OES = 0 + +############################################################################### + +EnableCap enum: + use GetPName FOG + use GetPName LIGHTING + use GetPName TEXTURE_1D + use GetPName TEXTURE_2D + use GetPName LINE_STIPPLE + use GetPName POLYGON_STIPPLE + use GetPName CULL_FACE + use GetPName ALPHA_TEST + use GetPName BLEND + use GetPName INDEX_LOGIC_OP + use GetPName COLOR_LOGIC_OP + use GetPName DITHER + use GetPName STENCIL_TEST + use GetPName DEPTH_TEST + use GetPName CLIP_PLANE0 + use GetPName CLIP_PLANE1 + use GetPName CLIP_PLANE2 + use GetPName CLIP_PLANE3 + use GetPName CLIP_PLANE4 + use GetPName CLIP_PLANE5 + use GetPName LIGHT0 + use GetPName LIGHT1 + use GetPName LIGHT2 + use GetPName LIGHT3 + use GetPName LIGHT4 + use GetPName LIGHT5 + use GetPName LIGHT6 + use GetPName LIGHT7 + use GetPName TEXTURE_GEN_S + use GetPName TEXTURE_GEN_T + use GetPName TEXTURE_GEN_R + use GetPName TEXTURE_GEN_Q + use GetPName MAP1_VERTEX_3 + use GetPName MAP1_VERTEX_4 + use GetPName MAP1_COLOR_4 + use GetPName MAP1_INDEX + use GetPName MAP1_NORMAL + use GetPName MAP1_TEXTURE_COORD_1 + use GetPName MAP1_TEXTURE_COORD_2 + use GetPName MAP1_TEXTURE_COORD_3 + use GetPName MAP1_TEXTURE_COORD_4 + use GetPName MAP2_VERTEX_3 + use GetPName MAP2_VERTEX_4 + use GetPName MAP2_COLOR_4 + use GetPName MAP2_INDEX + use GetPName MAP2_NORMAL + use GetPName MAP2_TEXTURE_COORD_1 + use GetPName MAP2_TEXTURE_COORD_2 + use GetPName MAP2_TEXTURE_COORD_3 + use GetPName MAP2_TEXTURE_COORD_4 + use GetPName POINT_SMOOTH + use GetPName LINE_SMOOTH + use GetPName POLYGON_SMOOTH + use GetPName SCISSOR_TEST + use GetPName COLOR_MATERIAL + use GetPName NORMALIZE + use GetPName AUTO_NORMAL + use GetPName POLYGON_OFFSET_POINT + use GetPName POLYGON_OFFSET_LINE + use GetPName POLYGON_OFFSET_FILL + use GetPName VERTEX_ARRAY + use GetPName NORMAL_ARRAY + use GetPName COLOR_ARRAY + use GetPName INDEX_ARRAY + use GetPName TEXTURE_COORD_ARRAY + use GetPName EDGE_FLAG_ARRAY + use EXT_convolution CONVOLUTION_1D_EXT + use EXT_convolution CONVOLUTION_2D_EXT + use EXT_convolution SEPARABLE_2D_EXT + use EXT_histogram HISTOGRAM_EXT + use EXT_histogram MINMAX_EXT + use EXT_rescale_normal RESCALE_NORMAL_EXT + use EXT_shared_texture_palette SHARED_TEXTURE_PALETTE_EXT + use EXT_texture3D TEXTURE_3D_EXT + use SGIS_multisample MULTISAMPLE_SGIS + use SGIS_multisample SAMPLE_ALPHA_TO_MASK_SGIS + use SGIS_multisample SAMPLE_ALPHA_TO_ONE_SGIS + use SGIS_multisample SAMPLE_MASK_SGIS + use SGIS_texture4D TEXTURE_4D_SGIS + use SGIX_async_histogram ASYNC_HISTOGRAM_SGIX + use SGIX_async_pixel ASYNC_TEX_IMAGE_SGIX + use SGIX_async_pixel ASYNC_DRAW_PIXELS_SGIX + use SGIX_async_pixel ASYNC_READ_PIXELS_SGIX + use SGIX_calligraphic_fragment CALLIGRAPHIC_FRAGMENT_SGIX + use SGIX_fog_offset FOG_OFFSET_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHTING_SGIX + use SGIX_fragment_lighting FRAGMENT_COLOR_MATERIAL_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT0_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT1_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT2_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT3_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT4_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT5_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT6_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT7_SGIX + use SGIX_framezoom FRAMEZOOM_SGIX + use SGIX_interlace INTERLACE_SGIX + use SGIX_ir_instrument1 IR_INSTRUMENT1_SGIX + use SGIX_pixel_texture PIXEL_TEX_GEN_SGIX + use SGIS_pixel_texture PIXEL_TEXTURE_SGIS + use SGIX_reference_plane REFERENCE_PLANE_SGIX + use SGIX_sprite SPRITE_SGIX + use SGI_color_table COLOR_TABLE_SGI + use SGI_color_table POST_CONVOLUTION_COLOR_TABLE_SGI + use SGI_color_table POST_COLOR_MATRIX_COLOR_TABLE_SGI + use SGI_texture_color_table TEXTURE_COLOR_TABLE_SGI + +############################################################################### + +ErrorCode enum: + NO_ERROR = 0 + INVALID_ENUM = 0x0500 + INVALID_VALUE = 0x0501 + INVALID_OPERATION = 0x0502 + STACK_OVERFLOW = 0x0503 + STACK_UNDERFLOW = 0x0504 + OUT_OF_MEMORY = 0x0505 + use EXT_histogram TABLE_TOO_LARGE_EXT + use EXT_texture TEXTURE_TOO_LARGE_EXT + +# Additional error codes + +VERSION_3_0 enum: +# use ARB_framebuffer_object INVALID_FRAMEBUFFER_OPERATION + +ARB_framebuffer_object enum: (note: no ARB suffixes) + INVALID_FRAMEBUFFER_OPERATION = 0x0506 # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_object enum: + INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506 + +# Aliases EXT_fbo enum above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + INVALID_FRAMEBUFFER_OPERATION_OES = 0x0506 + +############################################################################### + +FeedbackType enum: + 2D = 0x0600 + 3D = 0x0601 + 3D_COLOR = 0x0602 + 3D_COLOR_TEXTURE = 0x0603 + 4D_COLOR_TEXTURE = 0x0604 + +############################################################################### + +FeedBackToken enum: + PASS_THROUGH_TOKEN = 0x0700 + POINT_TOKEN = 0x0701 + LINE_TOKEN = 0x0702 + POLYGON_TOKEN = 0x0703 + BITMAP_TOKEN = 0x0704 + DRAW_PIXEL_TOKEN = 0x0705 + COPY_PIXEL_TOKEN = 0x0706 + LINE_RESET_TOKEN = 0x0707 + +############################################################################### + +FfdMaskSGIX enum: + TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001 + GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002 + +############################################################################### + +FfdTargetSGIX enum: + use SGIX_polynomial_ffd GEOMETRY_DEFORMATION_SGIX + use SGIX_polynomial_ffd TEXTURE_DEFORMATION_SGIX + +############################################################################### + +FogMode enum: + use TextureMagFilter LINEAR + EXP = 0x0800 + EXP2 = 0x0801 + use SGIS_fog_function FOG_FUNC_SGIS + +############################################################################### + +FogParameter enum: + use GetPName FOG_COLOR + use GetPName FOG_DENSITY + use GetPName FOG_END + use GetPName FOG_INDEX + use GetPName FOG_MODE + use GetPName FOG_START + use SGIX_fog_offset FOG_OFFSET_VALUE_SGIX + +############################################################################### + +FragmentLightModelParameterSGIX enum: + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX + +############################################################################### + +FrontFaceDirection enum: + CW = 0x0900 + CCW = 0x0901 + +############################################################################### + +GetColorTableParameterPNameSGI enum: + use SGI_color_table COLOR_TABLE_SCALE_SGI + use SGI_color_table COLOR_TABLE_BIAS_SGI + use SGI_color_table COLOR_TABLE_FORMAT_SGI + use SGI_color_table COLOR_TABLE_WIDTH_SGI + use SGI_color_table COLOR_TABLE_RED_SIZE_SGI + use SGI_color_table COLOR_TABLE_GREEN_SIZE_SGI + use SGI_color_table COLOR_TABLE_BLUE_SIZE_SGI + use SGI_color_table COLOR_TABLE_ALPHA_SIZE_SGI + use SGI_color_table COLOR_TABLE_LUMINANCE_SIZE_SGI + use SGI_color_table COLOR_TABLE_INTENSITY_SIZE_SGI + +############################################################################### + +GetConvolutionParameter enum: + use EXT_convolution CONVOLUTION_BORDER_MODE_EXT + use EXT_convolution CONVOLUTION_FILTER_SCALE_EXT + use EXT_convolution CONVOLUTION_FILTER_BIAS_EXT + use EXT_convolution CONVOLUTION_FORMAT_EXT + use EXT_convolution CONVOLUTION_WIDTH_EXT + use EXT_convolution CONVOLUTION_HEIGHT_EXT + use EXT_convolution MAX_CONVOLUTION_WIDTH_EXT + use EXT_convolution MAX_CONVOLUTION_HEIGHT_EXT + +############################################################################### + +GetHistogramParameterPNameEXT enum: + use EXT_histogram HISTOGRAM_WIDTH_EXT + use EXT_histogram HISTOGRAM_FORMAT_EXT + use EXT_histogram HISTOGRAM_RED_SIZE_EXT + use EXT_histogram HISTOGRAM_GREEN_SIZE_EXT + use EXT_histogram HISTOGRAM_BLUE_SIZE_EXT + use EXT_histogram HISTOGRAM_ALPHA_SIZE_EXT + use EXT_histogram HISTOGRAM_LUMINANCE_SIZE_EXT + use EXT_histogram HISTOGRAM_SINK_EXT + +############################################################################### + +GetMapQuery enum: + COEFF = 0x0A00 + ORDER = 0x0A01 + DOMAIN = 0x0A02 + +############################################################################### + +GetMinmaxParameterPNameEXT enum: + use EXT_histogram MINMAX_FORMAT_EXT + use EXT_histogram MINMAX_SINK_EXT + +############################################################################### + +GetPixelMap enum: + PIXEL_MAP_I_TO_I = 0x0C70 + PIXEL_MAP_S_TO_S = 0x0C71 + PIXEL_MAP_I_TO_R = 0x0C72 + PIXEL_MAP_I_TO_G = 0x0C73 + PIXEL_MAP_I_TO_B = 0x0C74 + PIXEL_MAP_I_TO_A = 0x0C75 + PIXEL_MAP_R_TO_R = 0x0C76 + PIXEL_MAP_G_TO_G = 0x0C77 + PIXEL_MAP_B_TO_B = 0x0C78 + PIXEL_MAP_A_TO_A = 0x0C79 + +############################################################################### + +GetPointervPName enum: + VERTEX_ARRAY_POINTER = 0x808E + NORMAL_ARRAY_POINTER = 0x808F + COLOR_ARRAY_POINTER = 0x8090 + INDEX_ARRAY_POINTER = 0x8091 + TEXTURE_COORD_ARRAY_POINTER = 0x8092 + EDGE_FLAG_ARRAY_POINTER = 0x8093 + FEEDBACK_BUFFER_POINTER = 0x0DF0 + SELECTION_BUFFER_POINTER = 0x0DF3 + use SGIX_instruments INSTRUMENT_BUFFER_POINTER_SGIX + +############################################################################### + +# the columns after the comment symbol (#) indicate: number of params, type +# (F - float, D - double, I - integer) for the returned values +GetPName enum: + CURRENT_COLOR = 0x0B00 # 4 F + CURRENT_INDEX = 0x0B01 # 1 F + CURRENT_NORMAL = 0x0B02 # 3 F + CURRENT_TEXTURE_COORDS = 0x0B03 # 4 F + CURRENT_RASTER_COLOR = 0x0B04 # 4 F + CURRENT_RASTER_INDEX = 0x0B05 # 1 F + CURRENT_RASTER_TEXTURE_COORDS = 0x0B06 # 4 F + CURRENT_RASTER_POSITION = 0x0B07 # 4 F + CURRENT_RASTER_POSITION_VALID = 0x0B08 # 1 I + CURRENT_RASTER_DISTANCE = 0x0B09 # 1 F + + POINT_SMOOTH = 0x0B10 # 1 I + POINT_SIZE = 0x0B11 # 1 F + POINT_SIZE_RANGE = 0x0B12 # 2 F + POINT_SIZE_GRANULARITY = 0x0B13 # 1 F + + LINE_SMOOTH = 0x0B20 # 1 I + LINE_WIDTH = 0x0B21 # 1 F + LINE_WIDTH_RANGE = 0x0B22 # 2 F + LINE_WIDTH_GRANULARITY = 0x0B23 # 1 F + LINE_STIPPLE = 0x0B24 # 1 I + LINE_STIPPLE_PATTERN = 0x0B25 # 1 I + LINE_STIPPLE_REPEAT = 0x0B26 # 1 I + use VERSION_1_2 SMOOTH_POINT_SIZE_RANGE + use VERSION_1_2 SMOOTH_POINT_SIZE_GRANULARITY + use VERSION_1_2 SMOOTH_LINE_WIDTH_RANGE + use VERSION_1_2 SMOOTH_LINE_WIDTH_GRANULARITY + use VERSION_1_2 ALIASED_POINT_SIZE_RANGE + use VERSION_1_2 ALIASED_LINE_WIDTH_RANGE + + LIST_MODE = 0x0B30 # 1 I + MAX_LIST_NESTING = 0x0B31 # 1 I + LIST_BASE = 0x0B32 # 1 I + LIST_INDEX = 0x0B33 # 1 I + + POLYGON_MODE = 0x0B40 # 2 I + POLYGON_SMOOTH = 0x0B41 # 1 I + POLYGON_STIPPLE = 0x0B42 # 1 I + EDGE_FLAG = 0x0B43 # 1 I + CULL_FACE = 0x0B44 # 1 I + CULL_FACE_MODE = 0x0B45 # 1 I + FRONT_FACE = 0x0B46 # 1 I + + LIGHTING = 0x0B50 # 1 I + LIGHT_MODEL_LOCAL_VIEWER = 0x0B51 # 1 I + LIGHT_MODEL_TWO_SIDE = 0x0B52 # 1 I + LIGHT_MODEL_AMBIENT = 0x0B53 # 4 F + SHADE_MODEL = 0x0B54 # 1 I + COLOR_MATERIAL_FACE = 0x0B55 # 1 I + COLOR_MATERIAL_PARAMETER = 0x0B56 # 1 I + COLOR_MATERIAL = 0x0B57 # 1 I + + FOG = 0x0B60 # 1 I + FOG_INDEX = 0x0B61 # 1 I + FOG_DENSITY = 0x0B62 # 1 F + FOG_START = 0x0B63 # 1 F + FOG_END = 0x0B64 # 1 F + FOG_MODE = 0x0B65 # 1 I + FOG_COLOR = 0x0B66 # 4 F + + DEPTH_RANGE = 0x0B70 # 2 F + DEPTH_TEST = 0x0B71 # 1 I + DEPTH_WRITEMASK = 0x0B72 # 1 I + DEPTH_CLEAR_VALUE = 0x0B73 # 1 F + DEPTH_FUNC = 0x0B74 # 1 I + + ACCUM_CLEAR_VALUE = 0x0B80 # 4 F + + STENCIL_TEST = 0x0B90 # 1 I + STENCIL_CLEAR_VALUE = 0x0B91 # 1 I + STENCIL_FUNC = 0x0B92 # 1 I + STENCIL_VALUE_MASK = 0x0B93 # 1 I + STENCIL_FAIL = 0x0B94 # 1 I + STENCIL_PASS_DEPTH_FAIL = 0x0B95 # 1 I + STENCIL_PASS_DEPTH_PASS = 0x0B96 # 1 I + STENCIL_REF = 0x0B97 # 1 I + STENCIL_WRITEMASK = 0x0B98 # 1 I + + MATRIX_MODE = 0x0BA0 # 1 I + NORMALIZE = 0x0BA1 # 1 I + VIEWPORT = 0x0BA2 # 4 I + MODELVIEW_STACK_DEPTH = 0x0BA3 # 1 I + PROJECTION_STACK_DEPTH = 0x0BA4 # 1 I + TEXTURE_STACK_DEPTH = 0x0BA5 # 1 I + MODELVIEW_MATRIX = 0x0BA6 # 16 F + PROJECTION_MATRIX = 0x0BA7 # 16 F + TEXTURE_MATRIX = 0x0BA8 # 16 F + + ATTRIB_STACK_DEPTH = 0x0BB0 # 1 I + CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1 # 1 I + + ALPHA_TEST = 0x0BC0 # 1 I + ALPHA_TEST_FUNC = 0x0BC1 # 1 I + ALPHA_TEST_REF = 0x0BC2 # 1 F + + DITHER = 0x0BD0 # 1 I + + BLEND_DST = 0x0BE0 # 1 I + BLEND_SRC = 0x0BE1 # 1 I + BLEND = 0x0BE2 # 1 I + + LOGIC_OP_MODE = 0x0BF0 # 1 I + INDEX_LOGIC_OP = 0x0BF1 # 1 I + LOGIC_OP = 0x0BF1 # 1 I + COLOR_LOGIC_OP = 0x0BF2 # 1 I + + AUX_BUFFERS = 0x0C00 # 1 I + DRAW_BUFFER = 0x0C01 # 1 I + READ_BUFFER = 0x0C02 # 1 I + + SCISSOR_BOX = 0x0C10 # 4 I + SCISSOR_TEST = 0x0C11 # 1 I + + INDEX_CLEAR_VALUE = 0x0C20 # 1 I + INDEX_WRITEMASK = 0x0C21 # 1 I + COLOR_CLEAR_VALUE = 0x0C22 # 4 F + COLOR_WRITEMASK = 0x0C23 # 4 I + + INDEX_MODE = 0x0C30 # 1 I + RGBA_MODE = 0x0C31 # 1 I + DOUBLEBUFFER = 0x0C32 # 1 I + STEREO = 0x0C33 # 1 I + + RENDER_MODE = 0x0C40 # 1 I + + PERSPECTIVE_CORRECTION_HINT = 0x0C50 # 1 I + POINT_SMOOTH_HINT = 0x0C51 # 1 I + LINE_SMOOTH_HINT = 0x0C52 # 1 I + POLYGON_SMOOTH_HINT = 0x0C53 # 1 I + FOG_HINT = 0x0C54 # 1 I + + TEXTURE_GEN_S = 0x0C60 # 1 I + TEXTURE_GEN_T = 0x0C61 # 1 I + TEXTURE_GEN_R = 0x0C62 # 1 I + TEXTURE_GEN_Q = 0x0C63 # 1 I + + PIXEL_MAP_I_TO_I_SIZE = 0x0CB0 # 1 I + PIXEL_MAP_S_TO_S_SIZE = 0x0CB1 # 1 I + PIXEL_MAP_I_TO_R_SIZE = 0x0CB2 # 1 I + PIXEL_MAP_I_TO_G_SIZE = 0x0CB3 # 1 I + PIXEL_MAP_I_TO_B_SIZE = 0x0CB4 # 1 I + PIXEL_MAP_I_TO_A_SIZE = 0x0CB5 # 1 I + PIXEL_MAP_R_TO_R_SIZE = 0x0CB6 # 1 I + PIXEL_MAP_G_TO_G_SIZE = 0x0CB7 # 1 I + PIXEL_MAP_B_TO_B_SIZE = 0x0CB8 # 1 I + PIXEL_MAP_A_TO_A_SIZE = 0x0CB9 # 1 I + + UNPACK_SWAP_BYTES = 0x0CF0 # 1 I + UNPACK_LSB_FIRST = 0x0CF1 # 1 I + UNPACK_ROW_LENGTH = 0x0CF2 # 1 I + UNPACK_SKIP_ROWS = 0x0CF3 # 1 I + UNPACK_SKIP_PIXELS = 0x0CF4 # 1 I + UNPACK_ALIGNMENT = 0x0CF5 # 1 I + + PACK_SWAP_BYTES = 0x0D00 # 1 I + PACK_LSB_FIRST = 0x0D01 # 1 I + PACK_ROW_LENGTH = 0x0D02 # 1 I + PACK_SKIP_ROWS = 0x0D03 # 1 I + PACK_SKIP_PIXELS = 0x0D04 # 1 I + PACK_ALIGNMENT = 0x0D05 # 1 I + + MAP_COLOR = 0x0D10 # 1 I + MAP_STENCIL = 0x0D11 # 1 I + INDEX_SHIFT = 0x0D12 # 1 I + INDEX_OFFSET = 0x0D13 # 1 I + RED_SCALE = 0x0D14 # 1 F + RED_BIAS = 0x0D15 # 1 F + ZOOM_X = 0x0D16 # 1 F + ZOOM_Y = 0x0D17 # 1 F + GREEN_SCALE = 0x0D18 # 1 F + GREEN_BIAS = 0x0D19 # 1 F + BLUE_SCALE = 0x0D1A # 1 F + BLUE_BIAS = 0x0D1B # 1 F + ALPHA_SCALE = 0x0D1C # 1 F + ALPHA_BIAS = 0x0D1D # 1 F + DEPTH_SCALE = 0x0D1E # 1 F + DEPTH_BIAS = 0x0D1F # 1 F + + MAX_EVAL_ORDER = 0x0D30 # 1 I + MAX_LIGHTS = 0x0D31 # 1 I + +# VERSION_3_0 enum: (aliases) + MAX_CLIP_DISTANCES = 0x0D32 # VERSION_3_0 # alias GL_MAX_CLIP_PLANES + + MAX_CLIP_PLANES = 0x0D32 # 1 I + MAX_TEXTURE_SIZE = 0x0D33 # 1 I + MAX_PIXEL_MAP_TABLE = 0x0D34 # 1 I + MAX_ATTRIB_STACK_DEPTH = 0x0D35 # 1 I + MAX_MODELVIEW_STACK_DEPTH = 0x0D36 # 1 I + MAX_NAME_STACK_DEPTH = 0x0D37 # 1 I + MAX_PROJECTION_STACK_DEPTH = 0x0D38 # 1 I + MAX_TEXTURE_STACK_DEPTH = 0x0D39 # 1 I + MAX_VIEWPORT_DIMS = 0x0D3A # 2 F + MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B # 1 I + + SUBPIXEL_BITS = 0x0D50 # 1 I + INDEX_BITS = 0x0D51 # 1 I + RED_BITS = 0x0D52 # 1 I + GREEN_BITS = 0x0D53 # 1 I + BLUE_BITS = 0x0D54 # 1 I + ALPHA_BITS = 0x0D55 # 1 I + DEPTH_BITS = 0x0D56 # 1 I + STENCIL_BITS = 0x0D57 # 1 I + ACCUM_RED_BITS = 0x0D58 # 1 I + ACCUM_GREEN_BITS = 0x0D59 # 1 I + ACCUM_BLUE_BITS = 0x0D5A # 1 I + ACCUM_ALPHA_BITS = 0x0D5B # 1 I + + NAME_STACK_DEPTH = 0x0D70 # 1 I + + AUTO_NORMAL = 0x0D80 # 1 I + + MAP1_COLOR_4 = 0x0D90 # 1 I + MAP1_INDEX = 0x0D91 # 1 I + MAP1_NORMAL = 0x0D92 # 1 I + MAP1_TEXTURE_COORD_1 = 0x0D93 # 1 I + MAP1_TEXTURE_COORD_2 = 0x0D94 # 1 I + MAP1_TEXTURE_COORD_3 = 0x0D95 # 1 I + MAP1_TEXTURE_COORD_4 = 0x0D96 # 1 I + MAP1_VERTEX_3 = 0x0D97 # 1 I + MAP1_VERTEX_4 = 0x0D98 # 1 I + + MAP2_COLOR_4 = 0x0DB0 # 1 I + MAP2_INDEX = 0x0DB1 # 1 I + MAP2_NORMAL = 0x0DB2 # 1 I + MAP2_TEXTURE_COORD_1 = 0x0DB3 # 1 I + MAP2_TEXTURE_COORD_2 = 0x0DB4 # 1 I + MAP2_TEXTURE_COORD_3 = 0x0DB5 # 1 I + MAP2_TEXTURE_COORD_4 = 0x0DB6 # 1 I + MAP2_VERTEX_3 = 0x0DB7 # 1 I + MAP2_VERTEX_4 = 0x0DB8 # 1 I + + MAP1_GRID_DOMAIN = 0x0DD0 # 2 F + MAP1_GRID_SEGMENTS = 0x0DD1 # 1 I + MAP2_GRID_DOMAIN = 0x0DD2 # 4 F + MAP2_GRID_SEGMENTS = 0x0DD3 # 2 I + + TEXTURE_1D = 0x0DE0 # 1 I + TEXTURE_2D = 0x0DE1 # 1 I + + FEEDBACK_BUFFER_SIZE = 0x0DF1 # 1 I + FEEDBACK_BUFFER_TYPE = 0x0DF2 # 1 I + + SELECTION_BUFFER_SIZE = 0x0DF4 # 1 I + + POLYGON_OFFSET_UNITS = 0x2A00 # 1 F + POLYGON_OFFSET_POINT = 0x2A01 # 1 I + POLYGON_OFFSET_LINE = 0x2A02 # 1 I + POLYGON_OFFSET_FILL = 0x8037 # 1 I + POLYGON_OFFSET_FACTOR = 0x8038 # 1 F + + TEXTURE_BINDING_1D = 0x8068 # 1 I + TEXTURE_BINDING_2D = 0x8069 # 1 I + TEXTURE_BINDING_3D = 0x806A # 1 I + + VERTEX_ARRAY = 0x8074 # 1 I + NORMAL_ARRAY = 0x8075 # 1 I + COLOR_ARRAY = 0x8076 # 1 I + INDEX_ARRAY = 0x8077 # 1 I + TEXTURE_COORD_ARRAY = 0x8078 # 1 I + EDGE_FLAG_ARRAY = 0x8079 # 1 I + + VERTEX_ARRAY_SIZE = 0x807A # 1 I + VERTEX_ARRAY_TYPE = 0x807B # 1 I + VERTEX_ARRAY_STRIDE = 0x807C # 1 I + + NORMAL_ARRAY_TYPE = 0x807E # 1 I + NORMAL_ARRAY_STRIDE = 0x807F # 1 I + + COLOR_ARRAY_SIZE = 0x8081 # 1 I + COLOR_ARRAY_TYPE = 0x8082 # 1 I + COLOR_ARRAY_STRIDE = 0x8083 # 1 I + + INDEX_ARRAY_TYPE = 0x8085 # 1 I + INDEX_ARRAY_STRIDE = 0x8086 # 1 I + + TEXTURE_COORD_ARRAY_SIZE = 0x8088 # 1 I + TEXTURE_COORD_ARRAY_TYPE = 0x8089 # 1 I + TEXTURE_COORD_ARRAY_STRIDE = 0x808A # 1 I + + EDGE_FLAG_ARRAY_STRIDE = 0x808C # 1 I + + use ClipPlaneName CLIP_PLANE0 + use ClipPlaneName CLIP_PLANE1 + use ClipPlaneName CLIP_PLANE2 + use ClipPlaneName CLIP_PLANE3 + use ClipPlaneName CLIP_PLANE4 + use ClipPlaneName CLIP_PLANE5 + + use LightName LIGHT0 + use LightName LIGHT1 + use LightName LIGHT2 + use LightName LIGHT3 + use LightName LIGHT4 + use LightName LIGHT5 + use LightName LIGHT6 + use LightName LIGHT7 + +# use ARB_transpose_matrix TRANSPOSE_MODELVIEW_MATRIX_ARB +# use ARB_transpose_matrix TRANSPOSE_PROJECTION_MATRIX_ARB +# use ARB_transpose_matrix TRANSPOSE_TEXTURE_MATRIX_ARB +# use ARB_transpose_matrix TRANSPOSE_COLOR_MATRIX_ARB + + use VERSION_1_2 LIGHT_MODEL_COLOR_CONTROL + + use EXT_blend_color BLEND_COLOR_EXT + + use EXT_blend_minmax BLEND_EQUATION_EXT + + use EXT_cmyka PACK_CMYK_HINT_EXT + use EXT_cmyka UNPACK_CMYK_HINT_EXT + + use EXT_convolution CONVOLUTION_1D_EXT + use EXT_convolution CONVOLUTION_2D_EXT + use EXT_convolution SEPARABLE_2D_EXT + use EXT_convolution POST_CONVOLUTION_RED_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_GREEN_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_BLUE_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_ALPHA_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_RED_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_GREEN_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_BLUE_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_ALPHA_BIAS_EXT + + use EXT_histogram HISTOGRAM_EXT + use EXT_histogram MINMAX_EXT + + use EXT_polygon_offset POLYGON_OFFSET_BIAS_EXT + + use EXT_rescale_normal RESCALE_NORMAL_EXT + + use EXT_shared_texture_palette SHARED_TEXTURE_PALETTE_EXT + + use EXT_texture_object TEXTURE_3D_BINDING_EXT + + use EXT_texture3D PACK_SKIP_IMAGES_EXT + use EXT_texture3D PACK_IMAGE_HEIGHT_EXT + use EXT_texture3D UNPACK_SKIP_IMAGES_EXT + use EXT_texture3D UNPACK_IMAGE_HEIGHT_EXT + use EXT_texture3D TEXTURE_3D_EXT + use EXT_texture3D MAX_3D_TEXTURE_SIZE_EXT + + use EXT_vertex_array VERTEX_ARRAY_COUNT_EXT + use EXT_vertex_array NORMAL_ARRAY_COUNT_EXT + use EXT_vertex_array COLOR_ARRAY_COUNT_EXT + use EXT_vertex_array INDEX_ARRAY_COUNT_EXT + use EXT_vertex_array TEXTURE_COORD_ARRAY_COUNT_EXT + use EXT_vertex_array EDGE_FLAG_ARRAY_COUNT_EXT + + use SGIS_detail_texture DETAIL_TEXTURE_2D_BINDING_SGIS + + use SGIS_fog_function FOG_FUNC_POINTS_SGIS + use SGIS_fog_function MAX_FOG_FUNC_POINTS_SGIS + + use SGIS_generate_mipmap GENERATE_MIPMAP_HINT_SGIS + + use SGIS_multisample MULTISAMPLE_SGIS + use SGIS_multisample SAMPLE_ALPHA_TO_MASK_SGIS + use SGIS_multisample SAMPLE_ALPHA_TO_ONE_SGIS + use SGIS_multisample SAMPLE_MASK_SGIS + use SGIS_multisample SAMPLE_BUFFERS_SGIS + use SGIS_multisample SAMPLES_SGIS + use SGIS_multisample SAMPLE_MASK_VALUE_SGIS + use SGIS_multisample SAMPLE_MASK_INVERT_SGIS + use SGIS_multisample SAMPLE_PATTERN_SGIS + + use SGIS_pixel_texture PIXEL_TEXTURE_SGIS + + use SGIS_point_parameters POINT_SIZE_MIN_SGIS + use SGIS_point_parameters POINT_SIZE_MAX_SGIS + use SGIS_point_parameters POINT_FADE_THRESHOLD_SIZE_SGIS + use SGIS_point_parameters DISTANCE_ATTENUATION_SGIS + + use SGIS_texture4D PACK_SKIP_VOLUMES_SGIS + use SGIS_texture4D PACK_IMAGE_DEPTH_SGIS + use SGIS_texture4D UNPACK_SKIP_VOLUMES_SGIS + use SGIS_texture4D UNPACK_IMAGE_DEPTH_SGIS + use SGIS_texture4D TEXTURE_4D_SGIS + use SGIS_texture4D MAX_4D_TEXTURE_SIZE_SGIS + use SGIS_texture4D TEXTURE_4D_BINDING_SGIS + + use SGIX_async ASYNC_MARKER_SGIX + + use SGIX_async_histogram ASYNC_HISTOGRAM_SGIX + use SGIX_async_histogram MAX_ASYNC_HISTOGRAM_SGIX + + use SGIX_async_pixel ASYNC_TEX_IMAGE_SGIX + use SGIX_async_pixel ASYNC_DRAW_PIXELS_SGIX + use SGIX_async_pixel ASYNC_READ_PIXELS_SGIX + use SGIX_async_pixel MAX_ASYNC_TEX_IMAGE_SGIX + use SGIX_async_pixel MAX_ASYNC_DRAW_PIXELS_SGIX + use SGIX_async_pixel MAX_ASYNC_READ_PIXELS_SGIX + + use SGIX_calligraphic_fragment CALLIGRAPHIC_FRAGMENT_SGIX + + use SGIX_clipmap MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX + use SGIX_clipmap MAX_CLIPMAP_DEPTH_SGIX + + use SGIX_convolution_accuracy CONVOLUTION_HINT_SGIX + + use SGIX_fog_offset FOG_OFFSET_SGIX + use SGIX_fog_offset FOG_OFFSET_VALUE_SGIX + + use SGIX_fragment_lighting FRAGMENT_LIGHTING_SGIX + use SGIX_fragment_lighting FRAGMENT_COLOR_MATERIAL_SGIX + use SGIX_fragment_lighting FRAGMENT_COLOR_MATERIAL_FACE_SGIX + use SGIX_fragment_lighting FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX + use SGIX_fragment_lighting MAX_FRAGMENT_LIGHTS_SGIX + use SGIX_fragment_lighting MAX_ACTIVE_LIGHTS_SGIX + use SGIX_fragment_lighting LIGHT_ENV_MODE_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT0_SGIX + + use SGIX_framezoom FRAMEZOOM_SGIX + use SGIX_framezoom FRAMEZOOM_FACTOR_SGIX + use SGIX_framezoom MAX_FRAMEZOOM_FACTOR_SGIX + + use SGIX_instruments INSTRUMENT_MEASUREMENTS_SGIX + + use SGIX_interlace INTERLACE_SGIX + + use SGIX_ir_instrument1 IR_INSTRUMENT1_SGIX + + use SGIX_pixel_texture PIXEL_TEX_GEN_SGIX + use SGIX_pixel_texture PIXEL_TEX_GEN_MODE_SGIX + + use SGIX_pixel_tiles PIXEL_TILE_BEST_ALIGNMENT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_CACHE_INCREMENT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_WIDTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_HEIGHT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_WIDTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_HEIGHT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_DEPTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_CACHE_SIZE_SGIX + + use SGIX_polynomial_ffd DEFORMATIONS_MASK_SGIX + + use SGIX_reference_plane REFERENCE_PLANE_EQUATION_SGIX + use SGIX_reference_plane REFERENCE_PLANE_SGIX + + use SGIX_sprite SPRITE_SGIX + use SGIX_sprite SPRITE_MODE_SGIX + use SGIX_sprite SPRITE_AXIS_SGIX + use SGIX_sprite SPRITE_TRANSLATION_SGIX + + use SGIX_subsample PACK_SUBSAMPLE_RATE_SGIX + use SGIX_subsample UNPACK_SUBSAMPLE_RATE_SGIX + use SGIX_resample PACK_RESAMPLE_SGIX + use SGIX_resample UNPACK_RESAMPLE_SGIX + + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_BIAS_RANGE_SGIX + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_SCALE_RANGE_SGIX + + use SGIX_vertex_preclip VERTEX_PRECLIP_SGIX + use SGIX_vertex_preclip VERTEX_PRECLIP_HINT_SGIX + + use SGI_color_matrix COLOR_MATRIX_SGI + use SGI_color_matrix COLOR_MATRIX_STACK_DEPTH_SGI + use SGI_color_matrix MAX_COLOR_MATRIX_STACK_DEPTH_SGI + use SGI_color_matrix POST_COLOR_MATRIX_RED_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_GREEN_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_BLUE_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_ALPHA_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_RED_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_GREEN_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_BLUE_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_ALPHA_BIAS_SGI + + use SGI_color_table COLOR_TABLE_SGI + use SGI_color_table POST_CONVOLUTION_COLOR_TABLE_SGI + use SGI_color_table POST_COLOR_MATRIX_COLOR_TABLE_SGI + + use SGI_texture_color_table TEXTURE_COLOR_TABLE_SGI + +############################################################################### + +GetTextureParameter enum: + use TextureParameterName TEXTURE_MAG_FILTER + use TextureParameterName TEXTURE_MIN_FILTER + use TextureParameterName TEXTURE_WRAP_S + use TextureParameterName TEXTURE_WRAP_T + TEXTURE_WIDTH = 0x1000 + TEXTURE_HEIGHT = 0x1001 + TEXTURE_INTERNAL_FORMAT = 0x1003 + TEXTURE_COMPONENTS = 0x1003 + TEXTURE_BORDER_COLOR = 0x1004 + TEXTURE_BORDER = 0x1005 + TEXTURE_RED_SIZE = 0x805C + TEXTURE_GREEN_SIZE = 0x805D + TEXTURE_BLUE_SIZE = 0x805E + TEXTURE_ALPHA_SIZE = 0x805F + TEXTURE_LUMINANCE_SIZE = 0x8060 + TEXTURE_INTENSITY_SIZE = 0x8061 + TEXTURE_PRIORITY = 0x8066 + TEXTURE_RESIDENT = 0x8067 + use EXT_texture3D TEXTURE_DEPTH_EXT + use EXT_texture3D TEXTURE_WRAP_R_EXT + use SGIS_detail_texture DETAIL_TEXTURE_LEVEL_SGIS + use SGIS_detail_texture DETAIL_TEXTURE_MODE_SGIS + use SGIS_detail_texture DETAIL_TEXTURE_FUNC_POINTS_SGIS + use SGIS_generate_mipmap GENERATE_MIPMAP_SGIS + use SGIS_sharpen_texture SHARPEN_TEXTURE_FUNC_POINTS_SGIS + use SGIS_texture_filter4 TEXTURE_FILTER4_SIZE_SGIS + use SGIS_texture_lod TEXTURE_MIN_LOD_SGIS + use SGIS_texture_lod TEXTURE_MAX_LOD_SGIS + use SGIS_texture_lod TEXTURE_BASE_LEVEL_SGIS + use SGIS_texture_lod TEXTURE_MAX_LEVEL_SGIS + use SGIS_texture_select DUAL_TEXTURE_SELECT_SGIS + use SGIS_texture_select QUAD_TEXTURE_SELECT_SGIS + use SGIS_texture4D TEXTURE_4DSIZE_SGIS + use SGIS_texture4D TEXTURE_WRAP_Q_SGIS + use SGIX_clipmap TEXTURE_CLIPMAP_CENTER_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_FRAME_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_OFFSET_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_LOD_OFFSET_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_DEPTH_SGIX + use SGIX_shadow TEXTURE_COMPARE_SGIX + use SGIX_shadow TEXTURE_COMPARE_OPERATOR_SGIX + use SGIX_shadow TEXTURE_LEQUAL_R_SGIX + use SGIX_shadow TEXTURE_GEQUAL_R_SGIX + use SGIX_shadow_ambient SHADOW_AMBIENT_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_S_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_T_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_R_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_S_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_T_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_R_SGIX + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_BIAS_SGIX + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_SCALE_SGIX + +############################################################################### + +HintMode enum: + DONT_CARE = 0x1100 + FASTEST = 0x1101 + NICEST = 0x1102 + +############################################################################### + +HintTarget enum: + use GetPName PERSPECTIVE_CORRECTION_HINT + use GetPName POINT_SMOOTH_HINT + use GetPName LINE_SMOOTH_HINT + use GetPName POLYGON_SMOOTH_HINT + use GetPName FOG_HINT + use EXT_cmyka PACK_CMYK_HINT_EXT + use EXT_cmyka UNPACK_CMYK_HINT_EXT + use SGIS_generate_mipmap GENERATE_MIPMAP_HINT_SGIS + use SGIX_convolution_accuracy CONVOLUTION_HINT_SGIX + use SGIX_texture_multi_buffer TEXTURE_MULTI_BUFFER_HINT_SGIX + use SGIX_vertex_preclip VERTEX_PRECLIP_HINT_SGIX + +############################################################################### + +HistogramTargetEXT enum: + use EXT_histogram HISTOGRAM_EXT + use EXT_histogram PROXY_HISTOGRAM_EXT + +############################################################################### + +IndexPointerType enum: + use DataType SHORT + use DataType INT + use DataType FLOAT + use DataType DOUBLE + +############################################################################### + +LightEnvModeSGIX enum: + use StencilOp REPLACE + use TextureEnvMode MODULATE + use AccumOp ADD + +############################################################################### + +LightEnvParameterSGIX enum: + use SGIX_fragment_lighting LIGHT_ENV_MODE_SGIX + +############################################################################### + +LightModelColorControl enum: + use VERSION_1_2 SINGLE_COLOR + use VERSION_1_2 SEPARATE_SPECULAR_COLOR + +############################################################################### + +LightModelParameter enum: + use GetPName LIGHT_MODEL_AMBIENT + use GetPName LIGHT_MODEL_LOCAL_VIEWER + use GetPName LIGHT_MODEL_TWO_SIDE + use VERSION_1_2 LIGHT_MODEL_COLOR_CONTROL + +############################################################################### + +LightParameter enum: + AMBIENT = 0x1200 + DIFFUSE = 0x1201 + SPECULAR = 0x1202 + POSITION = 0x1203 + SPOT_DIRECTION = 0x1204 + SPOT_EXPONENT = 0x1205 + SPOT_CUTOFF = 0x1206 + CONSTANT_ATTENUATION = 0x1207 + LINEAR_ATTENUATION = 0x1208 + QUADRATIC_ATTENUATION = 0x1209 + +############################################################################### + +ListMode enum: + COMPILE = 0x1300 + COMPILE_AND_EXECUTE = 0x1301 + +############################################################################### + +DataType enum: + BYTE = 0x1400 + UNSIGNED_BYTE = 0x1401 + SHORT = 0x1402 + UNSIGNED_SHORT = 0x1403 + INT = 0x1404 + UNSIGNED_INT = 0x1405 + FLOAT = 0x1406 + 2_BYTES = 0x1407 + 3_BYTES = 0x1408 + 4_BYTES = 0x1409 + DOUBLE = 0x140A + DOUBLE_EXT = 0x140A + +# OES_byte_coordinates: (OpenGL ES only) +# use DataType BYTE + +OES_element_index_uint enum: (OpenGL ES only) +# use DataType UNSIGNED_INT + +OES_texture_float enum: (OpenGL ES only; additional; see below) +# use DataType FLOAT + +VERSION_3_0 enum: +# use ARB_half_float_vertex HALF_FLOAT + +ARB_half_float_vertex enum: (note: no ARB suffixes) + HALF_FLOAT = 0x140B # VERSION_3_0 / ARB_half_float_vertex + +ARB_half_float_pixel enum: + HALF_FLOAT_ARB = 0x140B + +NV_half_float enum: + HALF_FLOAT_NV = 0x140B + +APPLE_float_pixels enum: (additional; see below) + HALF_APPLE = 0x140B + +OES_fixed_point enum: (OpenGL ES only) + FIXED_OES = 0x140C + +# Leave a gap to preserve even/odd int/uint token values +# ARB_future_use: 0x140D + +# Future NV extension (Khronos bug 5172) + INT64_NV = 0x140E + UNSIGNED_INT64_NV = 0x140F + +############################################################################### + +ListNameType enum: + use DataType BYTE + use DataType UNSIGNED_BYTE + use DataType SHORT + use DataType UNSIGNED_SHORT + use DataType INT + use DataType UNSIGNED_INT + use DataType FLOAT + use DataType 2_BYTES + use DataType 3_BYTES + use DataType 4_BYTES + +############################################################################### + +ListParameterName enum: + use SGIX_list_priority LIST_PRIORITY_SGIX + +############################################################################### + +LogicOp enum: + CLEAR = 0x1500 + AND = 0x1501 + AND_REVERSE = 0x1502 + COPY = 0x1503 + AND_INVERTED = 0x1504 + NOOP = 0x1505 + XOR = 0x1506 + OR = 0x1507 + NOR = 0x1508 + EQUIV = 0x1509 + INVERT = 0x150A + OR_REVERSE = 0x150B + COPY_INVERTED = 0x150C + OR_INVERTED = 0x150D + NAND = 0x150E + SET = 0x150F + +############################################################################### + +MapTarget enum: + use GetPName MAP1_COLOR_4 + use GetPName MAP1_INDEX + use GetPName MAP1_NORMAL + use GetPName MAP1_TEXTURE_COORD_1 + use GetPName MAP1_TEXTURE_COORD_2 + use GetPName MAP1_TEXTURE_COORD_3 + use GetPName MAP1_TEXTURE_COORD_4 + use GetPName MAP1_VERTEX_3 + use GetPName MAP1_VERTEX_4 + use GetPName MAP2_COLOR_4 + use GetPName MAP2_INDEX + use GetPName MAP2_NORMAL + use GetPName MAP2_TEXTURE_COORD_1 + use GetPName MAP2_TEXTURE_COORD_2 + use GetPName MAP2_TEXTURE_COORD_3 + use GetPName MAP2_TEXTURE_COORD_4 + use GetPName MAP2_VERTEX_3 + use GetPName MAP2_VERTEX_4 + use SGIX_polynomial_ffd GEOMETRY_DEFORMATION_SGIX + use SGIX_polynomial_ffd TEXTURE_DEFORMATION_SGIX + +############################################################################### + +MaterialFace enum: + use DrawBufferMode FRONT + use DrawBufferMode BACK + use DrawBufferMode FRONT_AND_BACK + + +############################################################################### + +MaterialParameter enum: + EMISSION = 0x1600 + SHININESS = 0x1601 + AMBIENT_AND_DIFFUSE = 0x1602 + COLOR_INDEXES = 0x1603 + use LightParameter AMBIENT + use LightParameter DIFFUSE + use LightParameter SPECULAR + +############################################################################### + +MatrixMode enum: + MODELVIEW = 0x1700 + PROJECTION = 0x1701 + TEXTURE = 0x1702 + +############################################################################### + +MeshMode1 enum: + use PolygonMode POINT + use PolygonMode LINE + +############################################################################### + +MeshMode2 enum: + use PolygonMode POINT + use PolygonMode LINE + use PolygonMode FILL + +############################################################################### + +MinmaxTargetEXT enum: + use EXT_histogram MINMAX_EXT + +############################################################################### + +NormalPointerType enum: + use DataType BYTE + use DataType SHORT + use DataType INT + use DataType FLOAT + use DataType DOUBLE + +############################################################################### + +PixelCopyType enum: + COLOR = 0x1800 + DEPTH = 0x1801 + STENCIL = 0x1802 + +EXT_discard_framebuffer enum: (OpenGL ES only) + COLOR_EXT = 0x1800 + DEPTH_EXT = 0x1801 + STENCIL_EXT = 0x1802 + +############################################################################### + +PixelFormat enum: + COLOR_INDEX = 0x1900 + STENCIL_INDEX = 0x1901 + DEPTH_COMPONENT = 0x1902 + RED = 0x1903 + GREEN = 0x1904 + BLUE = 0x1905 + ALPHA = 0x1906 + RGB = 0x1907 + RGBA = 0x1908 + LUMINANCE = 0x1909 + LUMINANCE_ALPHA = 0x190A + use EXT_abgr ABGR_EXT + use EXT_cmyka CMYK_EXT + use EXT_cmyka CMYKA_EXT + use SGIX_icc_texture R5_G6_B5_ICC_SGIX + use SGIX_icc_texture R5_G6_B5_A8_ICC_SGIX + use SGIX_icc_texture ALPHA16_ICC_SGIX + use SGIX_icc_texture LUMINANCE16_ICC_SGIX + use SGIX_icc_texture LUMINANCE16_ALPHA8_ICC_SGIX + use SGIX_ycrcb YCRCB_422_SGIX + use SGIX_ycrcb YCRCB_444_SGIX + +OES_depth_texture enum: (OpenGL ES only) +# use DataType UNSIGNED_SHORT +# use DataType UNSIGNED_INT +# use PixelFormat DEPTH_COMPONENT + +############################################################################### + +PixelMap enum: + use GetPixelMap PIXEL_MAP_I_TO_I + use GetPixelMap PIXEL_MAP_S_TO_S + use GetPixelMap PIXEL_MAP_I_TO_R + use GetPixelMap PIXEL_MAP_I_TO_G + use GetPixelMap PIXEL_MAP_I_TO_B + use GetPixelMap PIXEL_MAP_I_TO_A + use GetPixelMap PIXEL_MAP_R_TO_R + use GetPixelMap PIXEL_MAP_G_TO_G + use GetPixelMap PIXEL_MAP_B_TO_B + use GetPixelMap PIXEL_MAP_A_TO_A + +############################################################################### + +PixelStoreParameter enum: + use GetPName UNPACK_SWAP_BYTES + use GetPName UNPACK_LSB_FIRST + use GetPName UNPACK_ROW_LENGTH + use GetPName UNPACK_SKIP_ROWS + use GetPName UNPACK_SKIP_PIXELS + use GetPName UNPACK_ALIGNMENT + use GetPName PACK_SWAP_BYTES + use GetPName PACK_LSB_FIRST + use GetPName PACK_ROW_LENGTH + use GetPName PACK_SKIP_ROWS + use GetPName PACK_SKIP_PIXELS + use GetPName PACK_ALIGNMENT + use EXT_texture3D PACK_SKIP_IMAGES_EXT + use EXT_texture3D PACK_IMAGE_HEIGHT_EXT + use EXT_texture3D UNPACK_SKIP_IMAGES_EXT + use EXT_texture3D UNPACK_IMAGE_HEIGHT_EXT + use SGIS_texture4D PACK_SKIP_VOLUMES_SGIS + use SGIS_texture4D PACK_IMAGE_DEPTH_SGIS + use SGIS_texture4D UNPACK_SKIP_VOLUMES_SGIS + use SGIS_texture4D UNPACK_IMAGE_DEPTH_SGIS + use SGIX_pixel_tiles PIXEL_TILE_WIDTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_HEIGHT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_WIDTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_HEIGHT_SGIX + use SGIX_pixel_tiles PIXEL_TILE_GRID_DEPTH_SGIX + use SGIX_pixel_tiles PIXEL_TILE_CACHE_SIZE_SGIX + use SGIX_subsample PACK_SUBSAMPLE_RATE_SGIX + use SGIX_subsample UNPACK_SUBSAMPLE_RATE_SGIX + use SGIX_resample PACK_RESAMPLE_SGIX + use SGIX_resample UNPACK_RESAMPLE_SGIX + +############################################################################### + +PixelStoreResampleMode enum: + use SGIX_resample RESAMPLE_REPLICATE_SGIX + use SGIX_resample RESAMPLE_ZERO_FILL_SGIX + use SGIX_resample RESAMPLE_DECIMATE_SGIX + +############################################################################### + +PixelStoreSubsampleRate enum: + use SGIX_subsample PIXEL_SUBSAMPLE_4444_SGIX + use SGIX_subsample PIXEL_SUBSAMPLE_2424_SGIX + use SGIX_subsample PIXEL_SUBSAMPLE_4242_SGIX + +############################################################################### + +PixelTexGenMode enum: + use DrawBufferMode NONE + use PixelFormat RGB + use PixelFormat RGBA + use PixelFormat LUMINANCE + use PixelFormat LUMINANCE_ALPHA + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_ALPHA_MS_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_ALPHA_LS_SGIX + +############################################################################### + +PixelTexGenParameterNameSGIS enum: + use SGIS_pixel_texture PIXEL_FRAGMENT_RGB_SOURCE_SGIS + use SGIS_pixel_texture PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS + +############################################################################### + +PixelTransferParameter enum: + use GetPName MAP_COLOR + use GetPName MAP_STENCIL + use GetPName INDEX_SHIFT + use GetPName INDEX_OFFSET + use GetPName RED_SCALE + use GetPName RED_BIAS + use GetPName GREEN_SCALE + use GetPName GREEN_BIAS + use GetPName BLUE_SCALE + use GetPName BLUE_BIAS + use GetPName ALPHA_SCALE + use GetPName ALPHA_BIAS + use GetPName DEPTH_SCALE + use GetPName DEPTH_BIAS + use EXT_convolution POST_CONVOLUTION_RED_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_GREEN_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_BLUE_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_ALPHA_SCALE_EXT + use EXT_convolution POST_CONVOLUTION_RED_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_GREEN_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_BLUE_BIAS_EXT + use EXT_convolution POST_CONVOLUTION_ALPHA_BIAS_EXT + use SGI_color_matrix POST_COLOR_MATRIX_RED_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_GREEN_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_BLUE_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_ALPHA_SCALE_SGI + use SGI_color_matrix POST_COLOR_MATRIX_RED_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_GREEN_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_BLUE_BIAS_SGI + use SGI_color_matrix POST_COLOR_MATRIX_ALPHA_BIAS_SGI + +############################################################################### + +PixelType enum: + BITMAP = 0x1A00 + use DataType BYTE + use DataType UNSIGNED_BYTE + use DataType SHORT + use DataType UNSIGNED_SHORT + use DataType INT + use DataType UNSIGNED_INT + use DataType FLOAT + use EXT_packed_pixels UNSIGNED_BYTE_3_3_2_EXT + use EXT_packed_pixels UNSIGNED_SHORT_4_4_4_4_EXT + use EXT_packed_pixels UNSIGNED_SHORT_5_5_5_1_EXT + use EXT_packed_pixels UNSIGNED_INT_8_8_8_8_EXT + use EXT_packed_pixels UNSIGNED_INT_10_10_10_2_EXT + +############################################################################### + +PointParameterNameSGIS enum: + use SGIS_point_parameters POINT_SIZE_MIN_SGIS + use SGIS_point_parameters POINT_SIZE_MAX_SGIS + use SGIS_point_parameters POINT_FADE_THRESHOLD_SIZE_SGIS + use SGIS_point_parameters DISTANCE_ATTENUATION_SGIS + +############################################################################### + +PolygonMode enum: + POINT = 0x1B00 + LINE = 0x1B01 + FILL = 0x1B02 + +############################################################################### + +ReadBufferMode enum: + use DrawBufferMode FRONT_LEFT + use DrawBufferMode FRONT_RIGHT + use DrawBufferMode BACK_LEFT + use DrawBufferMode BACK_RIGHT + use DrawBufferMode FRONT + use DrawBufferMode BACK + use DrawBufferMode LEFT + use DrawBufferMode RIGHT + use DrawBufferMode AUX0 + use DrawBufferMode AUX1 + use DrawBufferMode AUX2 + use DrawBufferMode AUX3 + +############################################################################### + +RenderingMode enum: + RENDER = 0x1C00 + FEEDBACK = 0x1C01 + SELECT = 0x1C02 + +############################################################################### + +SamplePatternSGIS enum: + use SGIS_multisample 1PASS_SGIS + use SGIS_multisample 2PASS_0_SGIS + use SGIS_multisample 2PASS_1_SGIS + use SGIS_multisample 4PASS_0_SGIS + use SGIS_multisample 4PASS_1_SGIS + use SGIS_multisample 4PASS_2_SGIS + use SGIS_multisample 4PASS_3_SGIS + +############################################################################### + +SeparableTargetEXT enum: + use EXT_convolution SEPARABLE_2D_EXT + +############################################################################### + +ShadingModel enum: + FLAT = 0x1D00 + SMOOTH = 0x1D01 + +############################################################################### + +StencilFunction enum: + use AlphaFunction NEVER + use AlphaFunction LESS + use AlphaFunction EQUAL + use AlphaFunction LEQUAL + use AlphaFunction GREATER + use AlphaFunction NOTEQUAL + use AlphaFunction GEQUAL + use AlphaFunction ALWAYS + +############################################################################### + +StencilOp enum: + use BlendingFactorDest ZERO + KEEP = 0x1E00 + REPLACE = 0x1E01 + INCR = 0x1E02 + DECR = 0x1E03 + use LogicOp INVERT + +############################################################################### + +StringName enum: + VENDOR = 0x1F00 + RENDERER = 0x1F01 + VERSION = 0x1F02 + EXTENSIONS = 0x1F03 + +############################################################################### + +TexCoordPointerType enum: + use DataType SHORT + use DataType INT + use DataType FLOAT + use DataType DOUBLE + +############################################################################### + +TextureCoordName enum: + S = 0x2000 + T = 0x2001 + R = 0x2002 + Q = 0x2003 + +############################################################################### + +TextureEnvMode enum: + MODULATE = 0x2100 + DECAL = 0x2101 + use GetPName BLEND + use EXT_texture REPLACE_EXT + use AccumOp ADD + use SGIX_texture_add_env TEXTURE_ENV_BIAS_SGIX + +############################################################################### + +TextureEnvParameter enum: + TEXTURE_ENV_MODE = 0x2200 + TEXTURE_ENV_COLOR = 0x2201 + +############################################################################### + +TextureEnvTarget enum: + TEXTURE_ENV = 0x2300 + +############################################################################### + +TextureFilterFuncSGIS enum: + use SGIS_texture_filter4 FILTER4_SGIS + +############################################################################### + +TextureGenMode enum: + EYE_LINEAR = 0x2400 + OBJECT_LINEAR = 0x2401 + SPHERE_MAP = 0x2402 + use SGIS_point_line_texgen EYE_DISTANCE_TO_POINT_SGIS + use SGIS_point_line_texgen OBJECT_DISTANCE_TO_POINT_SGIS + use SGIS_point_line_texgen EYE_DISTANCE_TO_LINE_SGIS + use SGIS_point_line_texgen OBJECT_DISTANCE_TO_LINE_SGIS + +############################################################################### + +TextureGenParameter enum: + TEXTURE_GEN_MODE = 0x2500 + OBJECT_PLANE = 0x2501 + EYE_PLANE = 0x2502 + use SGIS_point_line_texgen EYE_POINT_SGIS + use SGIS_point_line_texgen OBJECT_POINT_SGIS + use SGIS_point_line_texgen EYE_LINE_SGIS + use SGIS_point_line_texgen OBJECT_LINE_SGIS + +# Aliases TextureGenParameter enum above +OES_texture_cube_map enum: (OpenGL ES only; additional; see below) + TEXTURE_GEN_MODE = 0x2500 + +############################################################################### + +TextureMagFilter enum: + NEAREST = 0x2600 + LINEAR = 0x2601 + use SGIS_detail_texture LINEAR_DETAIL_SGIS + use SGIS_detail_texture LINEAR_DETAIL_ALPHA_SGIS + use SGIS_detail_texture LINEAR_DETAIL_COLOR_SGIS + use SGIS_sharpen_texture LINEAR_SHARPEN_SGIS + use SGIS_sharpen_texture LINEAR_SHARPEN_ALPHA_SGIS + use SGIS_sharpen_texture LINEAR_SHARPEN_COLOR_SGIS + use SGIS_texture_filter4 FILTER4_SGIS + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_CEILING_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_ROUND_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_FLOOR_SGIX + +############################################################################### + +TextureMinFilter enum: + use TextureMagFilter NEAREST + use TextureMagFilter LINEAR + NEAREST_MIPMAP_NEAREST = 0x2700 + LINEAR_MIPMAP_NEAREST = 0x2701 + NEAREST_MIPMAP_LINEAR = 0x2702 + LINEAR_MIPMAP_LINEAR = 0x2703 + use SGIS_texture_filter4 FILTER4_SGIS + use SGIX_clipmap LINEAR_CLIPMAP_LINEAR_SGIX + use SGIX_clipmap NEAREST_CLIPMAP_NEAREST_SGIX + use SGIX_clipmap NEAREST_CLIPMAP_LINEAR_SGIX + use SGIX_clipmap LINEAR_CLIPMAP_NEAREST_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_CEILING_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_ROUND_SGIX + use SGIX_impact_pixel_texture PIXEL_TEX_GEN_Q_FLOOR_SGIX + +############################################################################### + +TextureParameterName enum: + TEXTURE_MAG_FILTER = 0x2800 + TEXTURE_MIN_FILTER = 0x2801 + TEXTURE_WRAP_S = 0x2802 + TEXTURE_WRAP_T = 0x2803 + use GetTextureParameter TEXTURE_BORDER_COLOR + use GetTextureParameter TEXTURE_PRIORITY + use EXT_texture3D TEXTURE_WRAP_R_EXT + use SGIS_detail_texture DETAIL_TEXTURE_LEVEL_SGIS + use SGIS_detail_texture DETAIL_TEXTURE_MODE_SGIS + use SGIS_generate_mipmap GENERATE_MIPMAP_SGIS + use SGIS_texture_select DUAL_TEXTURE_SELECT_SGIS + use SGIS_texture_select QUAD_TEXTURE_SELECT_SGIS + use SGIS_texture4D TEXTURE_WRAP_Q_SGIS + use SGIX_clipmap TEXTURE_CLIPMAP_CENTER_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_FRAME_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_OFFSET_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_LOD_OFFSET_SGIX + use SGIX_clipmap TEXTURE_CLIPMAP_DEPTH_SGIX + use SGIX_shadow TEXTURE_COMPARE_SGIX + use SGIX_shadow TEXTURE_COMPARE_OPERATOR_SGIX + use SGIX_shadow_ambient SHADOW_AMBIENT_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_S_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_T_SGIX + use SGIX_texture_coordinate_clamp TEXTURE_MAX_CLAMP_R_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_S_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_T_SGIX + use SGIX_texture_lod_bias TEXTURE_LOD_BIAS_R_SGIX + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_BIAS_SGIX + use SGIX_texture_scale_bias POST_TEXTURE_FILTER_SCALE_SGIX + +############################################################################### + +TextureTarget enum: + use GetPName TEXTURE_1D + use GetPName TEXTURE_2D + PROXY_TEXTURE_1D = 0x8063 + PROXY_TEXTURE_2D = 0x8064 + use EXT_texture3D TEXTURE_3D_EXT + use EXT_texture3D PROXY_TEXTURE_3D_EXT + use SGIS_detail_texture DETAIL_TEXTURE_2D_SGIS + use SGIS_texture4D TEXTURE_4D_SGIS + use SGIS_texture4D PROXY_TEXTURE_4D_SGIS + use SGIS_texture_lod TEXTURE_MIN_LOD_SGIS + use SGIS_texture_lod TEXTURE_MAX_LOD_SGIS + use SGIS_texture_lod TEXTURE_BASE_LEVEL_SGIS + use SGIS_texture_lod TEXTURE_MAX_LEVEL_SGIS + +############################################################################### + +TextureWrapMode enum: + CLAMP = 0x2900 + REPEAT = 0x2901 + use SGIS_texture_border_clamp CLAMP_TO_BORDER_SGIS + use SGIS_texture_edge_clamp CLAMP_TO_EDGE_SGIS + +############################################################################### + +PixelInternalFormat enum: + R3_G3_B2 = 0x2A10 + ALPHA4 = 0x803B + ALPHA8 = 0x803C + ALPHA12 = 0x803D + ALPHA16 = 0x803E + LUMINANCE4 = 0x803F + LUMINANCE8 = 0x8040 + LUMINANCE12 = 0x8041 + LUMINANCE16 = 0x8042 + LUMINANCE4_ALPHA4 = 0x8043 + LUMINANCE6_ALPHA2 = 0x8044 + LUMINANCE8_ALPHA8 = 0x8045 + LUMINANCE12_ALPHA4 = 0x8046 + LUMINANCE12_ALPHA12 = 0x8047 + LUMINANCE16_ALPHA16 = 0x8048 + INTENSITY = 0x8049 + INTENSITY4 = 0x804A + INTENSITY8 = 0x804B + INTENSITY12 = 0x804C + INTENSITY16 = 0x804D + RGB4 = 0x804F + RGB5 = 0x8050 + RGB8 = 0x8051 + RGB10 = 0x8052 + RGB12 = 0x8053 + RGB16 = 0x8054 + RGBA2 = 0x8055 + RGBA4 = 0x8056 + RGB5_A1 = 0x8057 + RGBA8 = 0x8058 + RGB10_A2 = 0x8059 + RGBA12 = 0x805A + RGBA16 = 0x805B + use EXT_texture RGB2_EXT + use SGIS_texture_select DUAL_ALPHA4_SGIS + use SGIS_texture_select DUAL_ALPHA8_SGIS + use SGIS_texture_select DUAL_ALPHA12_SGIS + use SGIS_texture_select DUAL_ALPHA16_SGIS + use SGIS_texture_select DUAL_LUMINANCE4_SGIS + use SGIS_texture_select DUAL_LUMINANCE8_SGIS + use SGIS_texture_select DUAL_LUMINANCE12_SGIS + use SGIS_texture_select DUAL_LUMINANCE16_SGIS + use SGIS_texture_select DUAL_INTENSITY4_SGIS + use SGIS_texture_select DUAL_INTENSITY8_SGIS + use SGIS_texture_select DUAL_INTENSITY12_SGIS + use SGIS_texture_select DUAL_INTENSITY16_SGIS + use SGIS_texture_select DUAL_LUMINANCE_ALPHA4_SGIS + use SGIS_texture_select DUAL_LUMINANCE_ALPHA8_SGIS + use SGIS_texture_select QUAD_ALPHA4_SGIS + use SGIS_texture_select QUAD_ALPHA8_SGIS + use SGIS_texture_select QUAD_LUMINANCE4_SGIS + use SGIS_texture_select QUAD_LUMINANCE8_SGIS + use SGIS_texture_select QUAD_INTENSITY4_SGIS + use SGIS_texture_select QUAD_INTENSITY8_SGIS + use SGIX_depth_texture DEPTH_COMPONENT16_SGIX + use SGIX_depth_texture DEPTH_COMPONENT24_SGIX + use SGIX_depth_texture DEPTH_COMPONENT32_SGIX + use SGIX_icc_texture RGB_ICC_SGIX + use SGIX_icc_texture RGBA_ICC_SGIX + use SGIX_icc_texture ALPHA_ICC_SGIX + use SGIX_icc_texture LUMINANCE_ICC_SGIX + use SGIX_icc_texture INTENSITY_ICC_SGIX + use SGIX_icc_texture LUMINANCE_ALPHA_ICC_SGIX + use SGIX_icc_texture R5_G6_B5_ICC_SGIX + use SGIX_icc_texture R5_G6_B5_A8_ICC_SGIX + use SGIX_icc_texture ALPHA16_ICC_SGIX + use SGIX_icc_texture LUMINANCE16_ICC_SGIX + use SGIX_icc_texture INTENSITY16_ICC_SGIX + use SGIX_icc_texture LUMINANCE16_ALPHA8_ICC_SGIX + +# Aliases PixelInternalFormat enums above +OES_rgb8_rgba8 enum: (OpenGL ES only) + RGB8 = 0x8051 + RGBA8 = 0x8058 + +############################################################################### + +InterleavedArrayFormat enum: + V2F = 0x2A20 + V3F = 0x2A21 + C4UB_V2F = 0x2A22 + C4UB_V3F = 0x2A23 + C3F_V3F = 0x2A24 + N3F_V3F = 0x2A25 + C4F_N3F_V3F = 0x2A26 + T2F_V3F = 0x2A27 + T4F_V4F = 0x2A28 + T2F_C4UB_V3F = 0x2A29 + T2F_C3F_V3F = 0x2A2A + T2F_N3F_V3F = 0x2A2B + T2F_C4F_N3F_V3F = 0x2A2C + T4F_C4F_N3F_V4F = 0x2A2D + +############################################################################### + +VertexPointerType enum: + use DataType SHORT + use DataType INT + use DataType FLOAT + use DataType DOUBLE + +############################################################################### + +# 0x3000 through 0x3FFF are reserved for clip planes +ClipPlaneName enum: + CLIP_PLANE0 = 0x3000 # 1 I + CLIP_PLANE1 = 0x3001 # 1 I + CLIP_PLANE2 = 0x3002 # 1 I + CLIP_PLANE3 = 0x3003 # 1 I + CLIP_PLANE4 = 0x3004 # 1 I + CLIP_PLANE5 = 0x3005 # 1 I + +VERSION_3_0 enum: (aliases) + CLIP_DISTANCE0 = 0x3000 # VERSION_3_0 # alias GL_CLIP_PLANE0 + CLIP_DISTANCE1 = 0x3001 # VERSION_3_0 # alias GL_CLIP_PLANE1 + CLIP_DISTANCE2 = 0x3002 # VERSION_3_0 # alias GL_CLIP_PLANE2 + CLIP_DISTANCE3 = 0x3003 # VERSION_3_0 # alias GL_CLIP_PLANE3 + CLIP_DISTANCE4 = 0x3004 # VERSION_3_0 # alias GL_CLIP_PLANE4 + CLIP_DISTANCE5 = 0x3005 # VERSION_3_0 # alias GL_CLIP_PLANE5 + CLIP_DISTANCE6 = 0x3006 # VERSION_3_0 # alias GL_CLIP_PLANE5 + CLIP_DISTANCE7 = 0x3007 # VERSION_3_0 # alias GL_CLIP_PLANE5 + +############################################################################### + +# 0x4000-0x4FFF are reserved for light numbers +LightName enum: + LIGHT0 = 0x4000 # 1 I + LIGHT1 = 0x4001 # 1 I + LIGHT2 = 0x4002 # 1 I + LIGHT3 = 0x4003 # 1 I + LIGHT4 = 0x4004 # 1 I + LIGHT5 = 0x4005 # 1 I + LIGHT6 = 0x4006 # 1 I + LIGHT7 = 0x4007 # 1 I + use SGIX_fragment_lighting FRAGMENT_LIGHT0_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT1_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT2_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT3_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT4_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT5_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT6_SGIX + use SGIX_fragment_lighting FRAGMENT_LIGHT7_SGIX + +############################################################################### + +EXT_abgr enum: + ABGR_EXT = 0x8000 + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + CONSTANT_COLOR = 0x8001 + ONE_MINUS_CONSTANT_COLOR = 0x8002 + CONSTANT_ALPHA = 0x8003 + ONE_MINUS_CONSTANT_ALPHA = 0x8004 + BLEND_COLOR = 0x8005 # 4 F + +EXT_blend_color enum: + CONSTANT_COLOR_EXT = 0x8001 + ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002 + CONSTANT_ALPHA_EXT = 0x8003 + ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004 + BLEND_COLOR_EXT = 0x8005 # 4 F + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) +EXT_blend_minmax enum: + FUNC_ADD = 0x8006 + FUNC_ADD_EXT = 0x8006 + MIN = 0x8007 + MIN_EXT = 0x8007 + MAX = 0x8008 + MAX_EXT = 0x8008 + BLEND_EQUATION = 0x8009 # 1 I + BLEND_EQUATION_EXT = 0x8009 # 1 I + +VERSION_2_0 enum: (Promoted for OpenGL 2.0) + BLEND_EQUATION_RGB = 0x8009 # VERSION_2_0 # alias GL_BLEND_EQUATION + +EXT_blend_equation_separate enum: (separate; see below) + BLEND_EQUATION_RGB_EXT = 0x8009 # alias GL_BLEND_EQUATION + +# Aliases EXT_blend_equation_separate enum above +OES_blend_equation_separate enum: (OpenGL ES only; additional; see below) + BLEND_EQUATION_RGB_OES = 0x8009 # 1 I + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) +EXT_blend_subtract enum: + FUNC_SUBTRACT = 0x800A + FUNC_SUBTRACT_EXT = 0x800A + FUNC_REVERSE_SUBTRACT = 0x800B + FUNC_REVERSE_SUBTRACT_EXT = 0x800B + +# Aliases EXT_blend_minmax and EXT_blend_subtract enums above +OES_blend_subtract enum: (OpenGL ES only) + FUNC_ADD_OES = 0x8006 + BLEND_EQUATION_OES = 0x8009 # 1 I + FUNC_SUBTRACT_OES = 0x800A + FUNC_REVERSE_SUBTRACT_OES = 0x800B + +############################################################################### + +EXT_cmyka enum: + CMYK_EXT = 0x800C + CMYKA_EXT = 0x800D + PACK_CMYK_HINT_EXT = 0x800E # 1 I + UNPACK_CMYK_HINT_EXT = 0x800F # 1 I + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + CONVOLUTION_1D = 0x8010 # 1 I + CONVOLUTION_2D = 0x8011 # 1 I + SEPARABLE_2D = 0x8012 # 1 I + CONVOLUTION_BORDER_MODE = 0x8013 + CONVOLUTION_FILTER_SCALE = 0x8014 + CONVOLUTION_FILTER_BIAS = 0x8015 + REDUCE = 0x8016 + CONVOLUTION_FORMAT = 0x8017 + CONVOLUTION_WIDTH = 0x8018 + CONVOLUTION_HEIGHT = 0x8019 + MAX_CONVOLUTION_WIDTH = 0x801A + MAX_CONVOLUTION_HEIGHT = 0x801B + POST_CONVOLUTION_RED_SCALE = 0x801C # 1 F + POST_CONVOLUTION_GREEN_SCALE = 0x801D # 1 F + POST_CONVOLUTION_BLUE_SCALE = 0x801E # 1 F + POST_CONVOLUTION_ALPHA_SCALE = 0x801F # 1 F + POST_CONVOLUTION_RED_BIAS = 0x8020 # 1 F + POST_CONVOLUTION_GREEN_BIAS = 0x8021 # 1 F + POST_CONVOLUTION_BLUE_BIAS = 0x8022 # 1 F + POST_CONVOLUTION_ALPHA_BIAS = 0x8023 # 1 F + +EXT_convolution enum: + CONVOLUTION_1D_EXT = 0x8010 # 1 I + CONVOLUTION_2D_EXT = 0x8011 # 1 I + SEPARABLE_2D_EXT = 0x8012 # 1 I + CONVOLUTION_BORDER_MODE_EXT = 0x8013 + CONVOLUTION_FILTER_SCALE_EXT = 0x8014 + CONVOLUTION_FILTER_BIAS_EXT = 0x8015 + REDUCE_EXT = 0x8016 + CONVOLUTION_FORMAT_EXT = 0x8017 + CONVOLUTION_WIDTH_EXT = 0x8018 + CONVOLUTION_HEIGHT_EXT = 0x8019 + MAX_CONVOLUTION_WIDTH_EXT = 0x801A + MAX_CONVOLUTION_HEIGHT_EXT = 0x801B + POST_CONVOLUTION_RED_SCALE_EXT = 0x801C # 1 F + POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D # 1 F + POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E # 1 F + POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F # 1 F + POST_CONVOLUTION_RED_BIAS_EXT = 0x8020 # 1 F + POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021 # 1 F + POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022 # 1 F + POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023 # 1 F + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + HISTOGRAM = 0x8024 # 1 I + PROXY_HISTOGRAM = 0x8025 + HISTOGRAM_WIDTH = 0x8026 + HISTOGRAM_FORMAT = 0x8027 + HISTOGRAM_RED_SIZE = 0x8028 + HISTOGRAM_GREEN_SIZE = 0x8029 + HISTOGRAM_BLUE_SIZE = 0x802A + HISTOGRAM_ALPHA_SIZE = 0x802B + HISTOGRAM_SINK = 0x802D + MINMAX = 0x802E # 1 I + MINMAX_FORMAT = 0x802F + MINMAX_SINK = 0x8030 + TABLE_TOO_LARGE = 0x8031 + +EXT_histogram enum: + HISTOGRAM_EXT = 0x8024 # 1 I + PROXY_HISTOGRAM_EXT = 0x8025 + HISTOGRAM_WIDTH_EXT = 0x8026 + HISTOGRAM_FORMAT_EXT = 0x8027 + HISTOGRAM_RED_SIZE_EXT = 0x8028 + HISTOGRAM_GREEN_SIZE_EXT = 0x8029 + HISTOGRAM_BLUE_SIZE_EXT = 0x802A + HISTOGRAM_ALPHA_SIZE_EXT = 0x802B + HISTOGRAM_LUMINANCE_SIZE = 0x802C + HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C + HISTOGRAM_SINK_EXT = 0x802D + MINMAX_EXT = 0x802E # 1 I + MINMAX_FORMAT_EXT = 0x802F + MINMAX_SINK_EXT = 0x8030 + TABLE_TOO_LARGE_EXT = 0x8031 + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + UNSIGNED_BYTE_3_3_2 = 0x8032 + UNSIGNED_SHORT_4_4_4_4 = 0x8033 + UNSIGNED_SHORT_5_5_5_1 = 0x8034 + UNSIGNED_INT_8_8_8_8 = 0x8035 + UNSIGNED_INT_10_10_10_2 = 0x8036 + UNSIGNED_BYTE_2_3_3_REV = 0x8362 + UNSIGNED_SHORT_5_6_5 = 0x8363 + UNSIGNED_SHORT_5_6_5_REV = 0x8364 + UNSIGNED_SHORT_4_4_4_4_REV = 0x8365 + UNSIGNED_SHORT_1_5_5_5_REV = 0x8366 + UNSIGNED_INT_8_8_8_8_REV = 0x8367 + UNSIGNED_INT_2_10_10_10_REV = 0x8368 + +EXT_packed_pixels enum: + UNSIGNED_BYTE_3_3_2_EXT = 0x8032 + UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033 + UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034 + UNSIGNED_INT_8_8_8_8_EXT = 0x8035 + UNSIGNED_INT_10_10_10_2_EXT = 0x8036 + UNSIGNED_BYTE_2_3_3_REV_EXT = 0x8362 + UNSIGNED_SHORT_5_6_5_EXT = 0x8363 + UNSIGNED_SHORT_5_6_5_REV_EXT = 0x8364 + UNSIGNED_SHORT_4_4_4_4_REV_EXT = 0x8365 + UNSIGNED_SHORT_1_5_5_5_REV_EXT = 0x8366 + UNSIGNED_INT_8_8_8_8_REV_EXT = 0x8367 + UNSIGNED_INT_2_10_10_10_REV_EXT = 0x8368 + +EXT_texture_type_2_10_10_10_REV enum: (OpenGL ES only) +# use EXT_packed_pixels UNSIGNED_INT_2_10_10_10_REV_EXT + +############################################################################### + +EXT_polygon_offset enum: + POLYGON_OFFSET_EXT = 0x8037 + POLYGON_OFFSET_FACTOR_EXT = 0x8038 + POLYGON_OFFSET_BIAS_EXT = 0x8039 # 1 F + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + RESCALE_NORMAL = 0x803A # 1 I + +EXT_rescale_normal enum: + RESCALE_NORMAL_EXT = 0x803A # 1 I + +############################################################################### + +EXT_texture enum: + ALPHA4_EXT = 0x803B + ALPHA8_EXT = 0x803C + ALPHA12_EXT = 0x803D + ALPHA16_EXT = 0x803E + LUMINANCE4_EXT = 0x803F + LUMINANCE8_EXT = 0x8040 + LUMINANCE12_EXT = 0x8041 + LUMINANCE16_EXT = 0x8042 + LUMINANCE4_ALPHA4_EXT = 0x8043 + LUMINANCE6_ALPHA2_EXT = 0x8044 + LUMINANCE8_ALPHA8_EXT = 0x8045 + LUMINANCE12_ALPHA4_EXT = 0x8046 + LUMINANCE12_ALPHA12_EXT = 0x8047 + LUMINANCE16_ALPHA16_EXT = 0x8048 + INTENSITY_EXT = 0x8049 + INTENSITY4_EXT = 0x804A + INTENSITY8_EXT = 0x804B + INTENSITY12_EXT = 0x804C + INTENSITY16_EXT = 0x804D + RGB2_EXT = 0x804E + RGB4_EXT = 0x804F + RGB5_EXT = 0x8050 + RGB8_EXT = 0x8051 + RGB10_EXT = 0x8052 + RGB12_EXT = 0x8053 + RGB16_EXT = 0x8054 + RGBA2_EXT = 0x8055 + RGBA4_EXT = 0x8056 + RGB5_A1_EXT = 0x8057 + RGBA8_EXT = 0x8058 + RGB10_A2_EXT = 0x8059 + RGBA12_EXT = 0x805A + RGBA16_EXT = 0x805B + TEXTURE_RED_SIZE_EXT = 0x805C + TEXTURE_GREEN_SIZE_EXT = 0x805D + TEXTURE_BLUE_SIZE_EXT = 0x805E + TEXTURE_ALPHA_SIZE_EXT = 0x805F + TEXTURE_LUMINANCE_SIZE_EXT = 0x8060 + TEXTURE_INTENSITY_SIZE_EXT = 0x8061 + REPLACE_EXT = 0x8062 + PROXY_TEXTURE_1D_EXT = 0x8063 + PROXY_TEXTURE_2D_EXT = 0x8064 + TEXTURE_TOO_LARGE_EXT = 0x8065 + +# Aliases EXT_texture enums above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + RGBA4_OES = 0x8056 + RGB5_A1_OES = 0x8057 + +############################################################################### + +EXT_texture_object enum: + TEXTURE_PRIORITY_EXT = 0x8066 + TEXTURE_RESIDENT_EXT = 0x8067 + TEXTURE_1D_BINDING_EXT = 0x8068 + TEXTURE_2D_BINDING_EXT = 0x8069 + TEXTURE_3D_BINDING_EXT = 0x806A # 1 I + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + PACK_SKIP_IMAGES = 0x806B # 1 I + PACK_IMAGE_HEIGHT = 0x806C # 1 F + UNPACK_SKIP_IMAGES = 0x806D # 1 I + UNPACK_IMAGE_HEIGHT = 0x806E # 1 F + TEXTURE_3D = 0x806F # 1 I + PROXY_TEXTURE_3D = 0x8070 + TEXTURE_DEPTH = 0x8071 + TEXTURE_WRAP_R = 0x8072 + MAX_3D_TEXTURE_SIZE = 0x8073 # 1 I + +EXT_texture3D enum: + PACK_SKIP_IMAGES_EXT = 0x806B # 1 I + PACK_IMAGE_HEIGHT_EXT = 0x806C # 1 F + UNPACK_SKIP_IMAGES_EXT = 0x806D # 1 I + UNPACK_IMAGE_HEIGHT_EXT = 0x806E # 1 F + TEXTURE_3D_EXT = 0x806F # 1 I + PROXY_TEXTURE_3D_EXT = 0x8070 + TEXTURE_DEPTH_EXT = 0x8071 + TEXTURE_WRAP_R_EXT = 0x8072 + MAX_3D_TEXTURE_SIZE_EXT = 0x8073 # 1 I + +# Aliases EXT_texture_object, EXT_texture3D enums above +OES_texture3D enum: (OpenGL ES only) + TEXTURE_3D_BINDING_OES = 0x806A # 1 I + TEXTURE_3D_OES = 0x806F # 1 I + TEXTURE_WRAP_R_OES = 0x8072 + MAX_3D_TEXTURE_SIZE_OES = 0x8073 # 1 I + +############################################################################### + +EXT_vertex_array enum: + VERTEX_ARRAY_EXT = 0x8074 + NORMAL_ARRAY_EXT = 0x8075 + COLOR_ARRAY_EXT = 0x8076 + INDEX_ARRAY_EXT = 0x8077 + TEXTURE_COORD_ARRAY_EXT = 0x8078 + EDGE_FLAG_ARRAY_EXT = 0x8079 + VERTEX_ARRAY_SIZE_EXT = 0x807A + VERTEX_ARRAY_TYPE_EXT = 0x807B + VERTEX_ARRAY_STRIDE_EXT = 0x807C + VERTEX_ARRAY_COUNT_EXT = 0x807D # 1 I + NORMAL_ARRAY_TYPE_EXT = 0x807E + NORMAL_ARRAY_STRIDE_EXT = 0x807F + NORMAL_ARRAY_COUNT_EXT = 0x8080 # 1 I + COLOR_ARRAY_SIZE_EXT = 0x8081 + COLOR_ARRAY_TYPE_EXT = 0x8082 + COLOR_ARRAY_STRIDE_EXT = 0x8083 + COLOR_ARRAY_COUNT_EXT = 0x8084 # 1 I + INDEX_ARRAY_TYPE_EXT = 0x8085 + INDEX_ARRAY_STRIDE_EXT = 0x8086 + INDEX_ARRAY_COUNT_EXT = 0x8087 # 1 I + TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088 + TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089 + TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A + TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B # 1 I + EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C + EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D # 1 I + VERTEX_ARRAY_POINTER_EXT = 0x808E + NORMAL_ARRAY_POINTER_EXT = 0x808F + COLOR_ARRAY_POINTER_EXT = 0x8090 + INDEX_ARRAY_POINTER_EXT = 0x8091 + TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092 + EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093 + +############################################################################### + +SGIX_interlace enum: + INTERLACE_SGIX = 0x8094 # 1 I + +############################################################################### + +SGIS_detail_texture enum: + DETAIL_TEXTURE_2D_SGIS = 0x8095 + DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096 # 1 I + LINEAR_DETAIL_SGIS = 0x8097 + LINEAR_DETAIL_ALPHA_SGIS = 0x8098 + LINEAR_DETAIL_COLOR_SGIS = 0x8099 + DETAIL_TEXTURE_LEVEL_SGIS = 0x809A + DETAIL_TEXTURE_MODE_SGIS = 0x809B + DETAIL_TEXTURE_FUNC_POINTS_SGIS = 0x809C + +############################################################################### + +# Reuses some SGIS_multisample values +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + MULTISAMPLE = 0x809D + SAMPLE_ALPHA_TO_COVERAGE = 0x809E + SAMPLE_ALPHA_TO_ONE = 0x809F + SAMPLE_COVERAGE = 0x80A0 + SAMPLE_BUFFERS = 0x80A8 # 1 I + SAMPLES = 0x80A9 # 1 I + SAMPLE_COVERAGE_VALUE = 0x80AA # 1 F + SAMPLE_COVERAGE_INVERT = 0x80AB # 1 I + +ARB_multisample enum: + MULTISAMPLE_ARB = 0x809D + SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E + SAMPLE_ALPHA_TO_ONE_ARB = 0x809F + SAMPLE_COVERAGE_ARB = 0x80A0 + SAMPLE_BUFFERS_ARB = 0x80A8 # 1 I + SAMPLES_ARB = 0x80A9 # 1 I + SAMPLE_COVERAGE_VALUE_ARB = 0x80AA # 1 F + SAMPLE_COVERAGE_INVERT_ARB = 0x80AB # 1 I + +SGIS_multisample enum: + MULTISAMPLE_SGIS = 0x809D # 1 I + SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E # 1 I + SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F # 1 I + SAMPLE_MASK_SGIS = 0x80A0 # 1 I + 1PASS_SGIS = 0x80A1 + 2PASS_0_SGIS = 0x80A2 + 2PASS_1_SGIS = 0x80A3 + 4PASS_0_SGIS = 0x80A4 + 4PASS_1_SGIS = 0x80A5 + 4PASS_2_SGIS = 0x80A6 + 4PASS_3_SGIS = 0x80A7 + SAMPLE_BUFFERS_SGIS = 0x80A8 # 1 I + SAMPLES_SGIS = 0x80A9 # 1 I + SAMPLE_MASK_VALUE_SGIS = 0x80AA # 1 F + SAMPLE_MASK_INVERT_SGIS = 0x80AB # 1 I + SAMPLE_PATTERN_SGIS = 0x80AC # 1 I + +# Reuses SGIS_multisample values. +EXT_multisample enum: + MULTISAMPLE_EXT = 0x809D + SAMPLE_ALPHA_TO_MASK_EXT = 0x809E + SAMPLE_ALPHA_TO_ONE_EXT = 0x809F + SAMPLE_MASK_EXT = 0x80A0 + 1PASS_EXT = 0x80A1 + 2PASS_0_EXT = 0x80A2 + 2PASS_1_EXT = 0x80A3 + 4PASS_0_EXT = 0x80A4 + 4PASS_1_EXT = 0x80A5 + 4PASS_2_EXT = 0x80A6 + 4PASS_3_EXT = 0x80A7 + SAMPLE_BUFFERS_EXT = 0x80A8 # 1 I + SAMPLES_EXT = 0x80A9 # 1 I + SAMPLE_MASK_VALUE_EXT = 0x80AA # 1 F + SAMPLE_MASK_INVERT_EXT = 0x80AB # 1 I + SAMPLE_PATTERN_EXT = 0x80AC # 1 I + MULTISAMPLE_BIT_EXT = 0x20000000 + +############################################################################### + +SGIS_sharpen_texture enum: + LINEAR_SHARPEN_SGIS = 0x80AD + LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE + LINEAR_SHARPEN_COLOR_SGIS = 0x80AF + SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0 + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + COLOR_MATRIX = 0x80B1 # 16 F + COLOR_MATRIX_STACK_DEPTH = 0x80B2 # 1 I + MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3 # 1 I + POST_COLOR_MATRIX_RED_SCALE = 0x80B4 # 1 F + POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5 # 1 F + POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6 # 1 F + POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7 # 1 F + POST_COLOR_MATRIX_RED_BIAS = 0x80B8 # 1 F + POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9 # 1 F + POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA # 1 F + POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB # 1 F + +SGI_color_matrix enum: + COLOR_MATRIX_SGI = 0x80B1 # 16 F + COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2 # 1 I + MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3 # 1 I + POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4 # 1 F + POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5 # 1 F + POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6 # 1 F + POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7 # 1 F + POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8 # 1 F + POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9 # 1 F + POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA # 1 F + POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB # 1 F + +############################################################################### + +SGI_texture_color_table enum: + TEXTURE_COLOR_TABLE_SGI = 0x80BC # 1 I + PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD + +############################################################################### + +SGIX_texture_add_env enum: + TEXTURE_ENV_BIAS_SGIX = 0x80BE + +############################################################################### + +SGIX_shadow_ambient enum: + SHADOW_AMBIENT_SGIX = 0x80BF + +############################################################################### + +# Intergraph/Intense3D/3Dlabs: 0x80C0-0x80CF + +# 3Dlabs_future_use: 0x80C0-0x80C7 + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + BLEND_DST_RGB = 0x80C8 + BLEND_SRC_RGB = 0x80C9 + BLEND_DST_ALPHA = 0x80CA + BLEND_SRC_ALPHA = 0x80CB + +EXT_blend_func_separate enum: + BLEND_DST_RGB_EXT = 0x80C8 + BLEND_SRC_RGB_EXT = 0x80C9 + BLEND_DST_ALPHA_EXT = 0x80CA + BLEND_SRC_ALPHA_EXT = 0x80CB + +# Aliases EXT_blend_func_separate enums above +OES_blend_func_separate enum: (OpenGL ES only) + BLEND_DST_RGB_OES = 0x80C8 + BLEND_SRC_RGB_OES = 0x80C9 + BLEND_DST_ALPHA_OES = 0x80CA + BLEND_SRC_ALPHA_OES = 0x80CB + +EXT_422_pixels enum: + 422_EXT = 0x80CC + 422_REV_EXT = 0x80CD + 422_AVERAGE_EXT = 0x80CE + 422_REV_AVERAGE_EXT = 0x80CF + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + COLOR_TABLE = 0x80D0 # 1 I + POST_CONVOLUTION_COLOR_TABLE = 0x80D1 # 1 I + POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2 # 1 I + PROXY_COLOR_TABLE = 0x80D3 + PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4 + PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5 + COLOR_TABLE_SCALE = 0x80D6 + COLOR_TABLE_BIAS = 0x80D7 + COLOR_TABLE_FORMAT = 0x80D8 + COLOR_TABLE_WIDTH = 0x80D9 + COLOR_TABLE_RED_SIZE = 0x80DA + COLOR_TABLE_GREEN_SIZE = 0x80DB + COLOR_TABLE_BLUE_SIZE = 0x80DC + COLOR_TABLE_ALPHA_SIZE = 0x80DD + COLOR_TABLE_LUMINANCE_SIZE = 0x80DE + COLOR_TABLE_INTENSITY_SIZE = 0x80DF + +SGI_color_table enum: + COLOR_TABLE_SGI = 0x80D0 # 1 I + POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1 # 1 I + POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2 # 1 I + PROXY_COLOR_TABLE_SGI = 0x80D3 + PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4 + PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5 + COLOR_TABLE_SCALE_SGI = 0x80D6 + COLOR_TABLE_BIAS_SGI = 0x80D7 + COLOR_TABLE_FORMAT_SGI = 0x80D8 + COLOR_TABLE_WIDTH_SGI = 0x80D9 + COLOR_TABLE_RED_SIZE_SGI = 0x80DA + COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB + COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC + COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD + COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE + COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + BGR = 0x80E0 + BGRA = 0x80E1 + +ARB_vertex_array_bgra enum: +# use VERSION_1_2 BGRA + +EXT_bgra enum: + BGR_EXT = 0x80E0 + BGRA_EXT = 0x80E1 + +############################################################################### + +# Microsoft: 0x80E2-0x80E7 + +############################################################################### + +VERSION_1_2 enum: + MAX_ELEMENTS_VERTICES = 0x80E8 + MAX_ELEMENTS_INDICES = 0x80E9 + +############################################################################### + +# Microsoft: 0x80EA-0x810F + +############################################################################### + +SGIS_texture_select enum: + DUAL_ALPHA4_SGIS = 0x8110 + DUAL_ALPHA8_SGIS = 0x8111 + DUAL_ALPHA12_SGIS = 0x8112 + DUAL_ALPHA16_SGIS = 0x8113 + DUAL_LUMINANCE4_SGIS = 0x8114 + DUAL_LUMINANCE8_SGIS = 0x8115 + DUAL_LUMINANCE12_SGIS = 0x8116 + DUAL_LUMINANCE16_SGIS = 0x8117 + DUAL_INTENSITY4_SGIS = 0x8118 + DUAL_INTENSITY8_SGIS = 0x8119 + DUAL_INTENSITY12_SGIS = 0x811A + DUAL_INTENSITY16_SGIS = 0x811B + DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C + DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D + QUAD_ALPHA4_SGIS = 0x811E + QUAD_ALPHA8_SGIS = 0x811F + QUAD_LUMINANCE4_SGIS = 0x8120 + QUAD_LUMINANCE8_SGIS = 0x8121 + QUAD_INTENSITY4_SGIS = 0x8122 + QUAD_INTENSITY8_SGIS = 0x8123 + DUAL_TEXTURE_SELECT_SGIS = 0x8124 + QUAD_TEXTURE_SELECT_SGIS = 0x8125 + +############################################################################### + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + POINT_SIZE_MIN = 0x8126 # 1 F + POINT_SIZE_MAX = 0x8127 # 1 F + POINT_FADE_THRESHOLD_SIZE = 0x8128 # 1 F + POINT_DISTANCE_ATTENUATION = 0x8129 # 3 F + +ARB_point_parameters enum: + POINT_SIZE_MIN_ARB = 0x8126 # 1 F + POINT_SIZE_MAX_ARB = 0x8127 # 1 F + POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128 # 1 F + POINT_DISTANCE_ATTENUATION_ARB = 0x8129 # 3 F + +EXT_point_parameters enum: + POINT_SIZE_MIN_EXT = 0x8126 # 1 F + POINT_SIZE_MAX_EXT = 0x8127 # 1 F + POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128 # 1 F + DISTANCE_ATTENUATION_EXT = 0x8129 # 3 F + +SGIS_point_parameters enum: + POINT_SIZE_MIN_SGIS = 0x8126 # 1 F + POINT_SIZE_MAX_SGIS = 0x8127 # 1 F + POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128 # 1 F + DISTANCE_ATTENUATION_SGIS = 0x8129 # 3 F + +############################################################################### + +SGIS_fog_function enum: + FOG_FUNC_SGIS = 0x812A + FOG_FUNC_POINTS_SGIS = 0x812B # 1 I + MAX_FOG_FUNC_POINTS_SGIS = 0x812C # 1 I + +############################################################################### + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + CLAMP_TO_BORDER = 0x812D + +ARB_texture_border_clamp enum: + CLAMP_TO_BORDER_ARB = 0x812D + +SGIS_texture_border_clamp enum: + CLAMP_TO_BORDER_SGIS = 0x812D + +############################################################################### + +SGIX_texture_multi_buffer enum: + TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + CLAMP_TO_EDGE = 0x812F + +SGIS_texture_edge_clamp enum: + CLAMP_TO_EDGE_SGIS = 0x812F + +############################################################################### + +SGIS_texture4D enum: + PACK_SKIP_VOLUMES_SGIS = 0x8130 # 1 I + PACK_IMAGE_DEPTH_SGIS = 0x8131 # 1 I + UNPACK_SKIP_VOLUMES_SGIS = 0x8132 # 1 I + UNPACK_IMAGE_DEPTH_SGIS = 0x8133 # 1 I + TEXTURE_4D_SGIS = 0x8134 # 1 I + PROXY_TEXTURE_4D_SGIS = 0x8135 + TEXTURE_4DSIZE_SGIS = 0x8136 + TEXTURE_WRAP_Q_SGIS = 0x8137 + MAX_4D_TEXTURE_SIZE_SGIS = 0x8138 # 1 I + TEXTURE_4D_BINDING_SGIS = 0x814F # 1 I + +############################################################################### + +SGIX_pixel_texture enum: + PIXEL_TEX_GEN_SGIX = 0x8139 # 1 I + PIXEL_TEX_GEN_MODE_SGIX = 0x832B # 1 I + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + TEXTURE_MIN_LOD = 0x813A + TEXTURE_MAX_LOD = 0x813B + TEXTURE_BASE_LEVEL = 0x813C + TEXTURE_MAX_LEVEL = 0x813D + +SGIS_texture_lod enum: + TEXTURE_MIN_LOD_SGIS = 0x813A + TEXTURE_MAX_LOD_SGIS = 0x813B + TEXTURE_BASE_LEVEL_SGIS = 0x813C + TEXTURE_MAX_LEVEL_SGIS = 0x813D + +############################################################################### + +SGIX_pixel_tiles enum: + PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E # 1 I + PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F # 1 I + PIXEL_TILE_WIDTH_SGIX = 0x8140 # 1 I + PIXEL_TILE_HEIGHT_SGIX = 0x8141 # 1 I + PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142 # 1 I + PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143 # 1 I + PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144 # 1 I + PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145 # 1 I + +############################################################################### + +SGIS_texture_filter4 enum: + FILTER4_SGIS = 0x8146 + TEXTURE_FILTER4_SIZE_SGIS = 0x8147 + +############################################################################### + +SGIX_sprite enum: + SPRITE_SGIX = 0x8148 # 1 I + SPRITE_MODE_SGIX = 0x8149 # 1 I + SPRITE_AXIS_SGIX = 0x814A # 3 F + SPRITE_TRANSLATION_SGIX = 0x814B # 3 F + SPRITE_AXIAL_SGIX = 0x814C + SPRITE_OBJECT_ALIGNED_SGIX = 0x814D + SPRITE_EYE_ALIGNED_SGIX = 0x814E + +############################################################################### + +# SGIS_texture4D (additional; see above): 0x814F + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + CONSTANT_BORDER = 0x8151 +# WRAP_BORDER = 0x8152 # Not actually used + REPLICATE_BORDER = 0x8153 + CONVOLUTION_BORDER_COLOR = 0x8154 + +HP_convolution_border_modes enum: + IGNORE_BORDER_HP = 0x8150 # Not promoted + CONSTANT_BORDER_HP = 0x8151 + REPLICATE_BORDER_HP = 0x8153 + CONVOLUTION_BORDER_COLOR_HP = 0x8154 + +############################################################################### + +# HP: 0x8155-0x816F + +############################################################################### + +SGIX_clipmap enum: + LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170 + TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171 + TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172 + TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173 + TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174 + TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175 + TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176 + MAX_CLIPMAP_DEPTH_SGIX = 0x8177 # 1 I + MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178 # 1 I + NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D + NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E + LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F + +############################################################################### + +SGIX_texture_scale_bias enum: + POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179 + POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A + POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B # 2 F + POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C # 2 F + +############################################################################### + +SGIX_reference_plane enum: + REFERENCE_PLANE_SGIX = 0x817D # 1 I + REFERENCE_PLANE_EQUATION_SGIX = 0x817E # 4 F + +############################################################################### + +SGIX_ir_instrument1 enum: + IR_INSTRUMENT1_SGIX = 0x817F # 1 I + +############################################################################### + +SGIX_instruments enum: + INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180 + INSTRUMENT_MEASUREMENTS_SGIX = 0x8181 # 1 I + +############################################################################### + +SGIX_list_priority enum: + LIST_PRIORITY_SGIX = 0x8182 + +############################################################################### + +SGIX_calligraphic_fragment enum: + CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183 # 1 I + +############################################################################### + +SGIX_impact_pixel_texture enum: + PIXEL_TEX_GEN_Q_CEILING_SGIX = 0x8184 + PIXEL_TEX_GEN_Q_ROUND_SGIX = 0x8185 + PIXEL_TEX_GEN_Q_FLOOR_SGIX = 0x8186 + PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX = 0x8187 + PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX = 0x8188 + PIXEL_TEX_GEN_ALPHA_LS_SGIX = 0x8189 + PIXEL_TEX_GEN_ALPHA_MS_SGIX = 0x818A + +############################################################################### + +SGIX_framezoom enum: + FRAMEZOOM_SGIX = 0x818B # 1 I + FRAMEZOOM_FACTOR_SGIX = 0x818C # 1 I + MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D # 1 I + +############################################################################### + +SGIX_texture_lod_bias enum: + TEXTURE_LOD_BIAS_S_SGIX = 0x818E + TEXTURE_LOD_BIAS_T_SGIX = 0x818F + TEXTURE_LOD_BIAS_R_SGIX = 0x8190 + +############################################################################### + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + GENERATE_MIPMAP = 0x8191 + GENERATE_MIPMAP_HINT = 0x8192 # 1 I + +SGIS_generate_mipmap enum: + GENERATE_MIPMAP_SGIS = 0x8191 + GENERATE_MIPMAP_HINT_SGIS = 0x8192 # 1 I + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_spotlight_cutoff: 0x8193 +# SPOT_CUTOFF_DELTA_SGIX = 0x8193 + +############################################################################### + +SGIX_polynomial_ffd enum: + GEOMETRY_DEFORMATION_SGIX = 0x8194 + TEXTURE_DEFORMATION_SGIX = 0x8195 + DEFORMATIONS_MASK_SGIX = 0x8196 # 1 I + MAX_DEFORMATION_ORDER_SGIX = 0x8197 + +############################################################################### + +SGIX_fog_offset enum: + FOG_OFFSET_SGIX = 0x8198 # 1 I + FOG_OFFSET_VALUE_SGIX = 0x8199 # 4 F + +############################################################################### + +SGIX_shadow enum: + TEXTURE_COMPARE_SGIX = 0x819A + TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B + TEXTURE_LEQUAL_R_SGIX = 0x819C + TEXTURE_GEQUAL_R_SGIX = 0x819D + +############################################################################### + +# SGI private extension, not in enumext.spec +# SGIX_igloo_interface: 0x819E-0x81A4 +# IGLOO_FULLSCREEN_SGIX = 0x819E +# IGLOO_VIEWPORT_OFFSET_SGIX = 0x819F +# IGLOO_SWAPTMESH_SGIX = 0x81A0 +# IGLOO_COLORNORMAL_SGIX = 0x81A1 +# IGLOO_IRISGL_MODE_SGIX = 0x81A2 +# IGLOO_LMC_COLOR_SGIX = 0x81A3 +# IGLOO_TMESHMODE_SGIX = 0x81A4 + +############################################################################### + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + DEPTH_COMPONENT16 = 0x81A5 + DEPTH_COMPONENT24 = 0x81A6 + DEPTH_COMPONENT32 = 0x81A7 + +ARB_depth_texture enum: + DEPTH_COMPONENT16_ARB = 0x81A5 + DEPTH_COMPONENT24_ARB = 0x81A6 + DEPTH_COMPONENT32_ARB = 0x81A7 + +SGIX_depth_texture enum: + DEPTH_COMPONENT16_SGIX = 0x81A5 + DEPTH_COMPONENT24_SGIX = 0x81A6 + DEPTH_COMPONENT32_SGIX = 0x81A7 + +# Aliases ARB_depth_texture enum above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + DEPTH_COMPONENT16_OES = 0x81A5 + +# Aliases ARB_depth_texture enum above +OES_depth24 enum: (OpenGL ES only) + DEPTH_COMPONENT24_OES = 0x81A6 + +# Aliases ARB_depth_texture enum above +OES_depth32 enum: (OpenGL ES only) + DEPTH_COMPONENT32_OES = 0x81A7 + +############################################################################### + +EXT_compiled_vertex_array enum: + ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8 + ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9 + +############################################################################### + +EXT_cull_vertex enum: + CULL_VERTEX_EXT = 0x81AA + CULL_VERTEX_EYE_POSITION_EXT = 0x81AB + CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC + +############################################################################### + +# Promoted from SGI? +EXT_index_array_formats enum: + IUI_V2F_EXT = 0x81AD + IUI_V3F_EXT = 0x81AE + IUI_N3F_V2F_EXT = 0x81AF + IUI_N3F_V3F_EXT = 0x81B0 + T2F_IUI_V2F_EXT = 0x81B1 + T2F_IUI_V3F_EXT = 0x81B2 + T2F_IUI_N3F_V2F_EXT = 0x81B3 + T2F_IUI_N3F_V3F_EXT = 0x81B4 + +############################################################################### + +# Promoted from SGI? +EXT_index_func enum: + INDEX_TEST_EXT = 0x81B5 + INDEX_TEST_FUNC_EXT = 0x81B6 + INDEX_TEST_REF_EXT = 0x81B7 + +############################################################################### + +# Promoted from SGI? +EXT_index_material enum: + INDEX_MATERIAL_EXT = 0x81B8 + INDEX_MATERIAL_PARAMETER_EXT = 0x81B9 + INDEX_MATERIAL_FACE_EXT = 0x81BA + +############################################################################### + +SGIX_ycrcb enum: + YCRCB_422_SGIX = 0x81BB + YCRCB_444_SGIX = 0x81BC + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGI_complex_type: 0x81BD-0x81C3 +# COMPLEX_UNSIGNED_BYTE_SGI = 0x81BD +# COMPLEX_BYTE_SGI = 0x81BE +# COMPLEX_UNSIGNED_SHORT_SGI = 0x81BF +# COMPLEX_SHORT_SGI = 0x81C0 +# COMPLEX_UNSIGNED_INT_SGI = 0x81C1 +# COMPLEX_INT_SGI = 0x81C2 +# COMPLEX_FLOAT_SGI = 0x81C3 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGI_fft: 0x81C4-0x81CA +# POST_TRANSFORM_RED_SCALE_SGI = ???? # 1 F +# POST_TRANSFORM_GREEN_SCALE_SGI = ???? # 1 F +# POST_TRANSFORM_BLUE_SCALE_SGI = ???? # 1 F +# POST_TRANSFORM_ALPHA_SCALE_SGI = ???? # 1 F +# POST_TRANSFORM_RED_BIAS_SGI = ???? # 1 F +# POST_TRANSFORM_GREEN_BIAS_SGI = ???? # 1 F +# POST_TRANSFORM_BLUE_BIAS_SGI = ???? # 1 F +# POST_TRANSFORM_ALPHA_BIAS_SGI = ???? # 1 F +# PIXEL_TRANSFORM_OPERATOR_SGI = 0x81C4 # 1 I +# CONVOLUTION_SGI = 0x81C5 +# FFT_1D_SGI = 0x81C6 +# PIXEL_TRANSFORM_SGI = 0x81C7 +# MAX_FFT_WIDTH_SGI = 0x81C8 +# SORT_SGI = 0x81C9 +# TRANSPOSE_SGI = 0x81CA + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_nurbs_eval: 0x81CB-0x81CF +# MAP1_VERTEX_3_NURBS_SGIX = 0x81CB # 1 I +# MAP1_VERTEX_4_NURBS_SGIX = 0x81CC # 1 I +# MAP1_INDEX_NURBS_SGIX = 0x81CD # 1 I +# MAP1_COLOR_4_NURBS_SGIX = 0x81CE # 1 I +# MAP1_NORMAL_NURBS_SGIX = 0x81CF # 1 I +# MAP1_TEXTURE_COORD_1_NURBS_SGIX = 0x81E0 # 1 I +# MAP1_TEXTURE_COORD_2_NURBS_SGIX = 0x81E1 # 1 I +# MAP1_TEXTURE_COORD_3_NURBS_SGIX = 0x81E2 # 1 I +# MAP1_TEXTURE_COORD_4_NURBS_SGIX = 0x81E3 # 1 I +# MAP2_VERTEX_3_NURBS_SGIX = 0x81E4 # 1 I +# MAP2_VERTEX_4_NURBS_SGIX = 0x81E5 # 1 I +# MAP2_INDEX_NURBS_SGIX = 0x81E6 # 1 I +# MAP2_COLOR_4_NURBS_SGIX = 0x81E7 # 1 I +# MAP2_NORMAL_NURBS_SGIX = 0x81E8 # 1 I +# MAP2_TEXTURE_COORD_1_NURBS_SGIX = 0x81E9 # 1 I +# MAP2_TEXTURE_COORD_2_NURBS_SGIX = 0x81EA # 1 I +# MAP2_TEXTURE_COORD_3_NURBS_SGIX = 0x81EB # 1 I +# MAP2_TEXTURE_COORD_4_NURBS_SGIX = 0x81EC # 1 I +# NURBS_KNOT_COUNT_SGIX = 0x81ED +# NURBS_KNOT_VECTOR_SGIX = 0x81EE + +############################################################################### + +# Sun: 0x81D0-0x81DF + +# No extension spec, not in enumext.spec +# SUNX_surface_hint enum: +# SURFACE_SIZE_HINT_SUNX = 0x81D2 +# LARGE_SUNX = 0x81D3 + +SUNX_general_triangle_list enum: + RESTART_SUN = 0x0001 + REPLACE_MIDDLE_SUN = 0x0002 + REPLACE_OLDEST_SUN = 0x0003 + WRAP_BORDER_SUN = 0x81D4 + TRIANGLE_LIST_SUN = 0x81D7 + REPLACEMENT_CODE_SUN = 0x81D8 + +SUNX_constant_data enum: + UNPACK_CONSTANT_DATA_SUNX = 0x81D5 + TEXTURE_CONSTANT_DATA_SUNX = 0x81D6 + +SUN_global_alpha enum: + GLOBAL_ALPHA_SUN = 0x81D9 + GLOBAL_ALPHA_FACTOR_SUN = 0x81DA + +############################################################################### + +# SGIX_nurbs_eval (additional; see above): 0x81E0-0x81EE + +############################################################################### + +SGIS_texture_color_mask enum: + TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF + +############################################################################### + +SGIS_point_line_texgen enum: + EYE_DISTANCE_TO_POINT_SGIS = 0x81F0 + OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1 + EYE_DISTANCE_TO_LINE_SGIS = 0x81F2 + OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3 + EYE_POINT_SGIS = 0x81F4 + OBJECT_POINT_SGIS = 0x81F5 + EYE_LINE_SGIS = 0x81F6 + OBJECT_LINE_SGIS = 0x81F7 + +############################################################################### + +VERSION_1_2 enum: (Promoted for OpenGL 1.2) + LIGHT_MODEL_COLOR_CONTROL = 0x81F8 # 1 I + SINGLE_COLOR = 0x81F9 + SEPARATE_SPECULAR_COLOR = 0x81FA + +EXT_separate_specular_color enum: + LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8 + SINGLE_COLOR_EXT = 0x81F9 + SEPARATE_SPECULAR_COLOR_EXT = 0x81FA + +############################################################################### + +EXT_shared_texture_palette enum: + SHARED_TEXTURE_PALETTE_EXT = 0x81FB # 1 I + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fog_scale: 0x81FC-0x81FD +# FOG_SCALE_SGIX = 0x81FC # 1 I +# FOG_SCALE_VALUE_SGIX = 0x81FD # 1 F + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fog_blend: 0x81FE-0x81FF +# FOG_BLEND_ALPHA_SGIX = 0x81FE # 1 I +# FOG_BLEND_COLOR_SGIX = 0x81FF # 1 I + +############################################################################### + +# ATI: 0x8200-0x820F (released by Microsoft 2002/9/16) +ATI_text_fragment_shader enum: + TEXT_FRAGMENT_SHADER_ATI = 0x8200 + +############################################################################### + +# OpenGL ARB: 0x8210-0x823F + +VERSION_3_0 enum: + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_RED_SIZE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_GREEN_SIZE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_BLUE_SIZE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE + use ARB_framebuffer_object FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE + use ARB_framebuffer_object FRAMEBUFFER_DEFAULT + use ARB_framebuffer_object FRAMEBUFFER_UNDEFINED + use ARB_framebuffer_object DEPTH_STENCIL_ATTACHMENT + +ARB_framebuffer_object enum: (note: no ARB suffixes) + FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_DEFAULT = 0x8218 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_UNDEFINED = 0x8219 # VERSION_3_0 / ARB_fbo + DEPTH_STENCIL_ATTACHMENT = 0x821A # VERSION_3_0 / ARB_fbo + +VERSION_3_0 enum: + MAJOR_VERSION = 0x821B # VERSION_3_0 + MINOR_VERSION = 0x821C # VERSION_3_0 + NUM_EXTENSIONS = 0x821D # VERSION_3_0 + CONTEXT_FLAGS = 0x821E # VERSION_3_0 + +# ARB_future_use: 0x821F-0x8221 + +VERSION_3_0 enum: + use ARB_framebuffer_object INDEX + +ARB_framebuffer_object enum: (note: no ARB suffixes) + INDEX = 0x8222 # VERSION_3_0 / ARB_fbo + +VERSION_3_0 enum: + DEPTH_BUFFER = 0x8223 # VERSION_3_0 + STENCIL_BUFFER = 0x8224 # VERSION_3_0 + COMPRESSED_RED = 0x8225 # VERSION_3_0 + COMPRESSED_RG = 0x8226 # VERSION_3_0 + +VERSION_3_0 enum: + use ARB_texture_rg RG + use ARB_texture_rg RG_INTEGER + use ARB_texture_rg R8 + use ARB_texture_rg R16 + use ARB_texture_rg RG8 + use ARB_texture_rg RG16 + use ARB_texture_rg R16F + use ARB_texture_rg R32F + use ARB_texture_rg RG16F + use ARB_texture_rg RG32F + use ARB_texture_rg R8I + use ARB_texture_rg R8UI + use ARB_texture_rg R16I + use ARB_texture_rg R16UI + use ARB_texture_rg R32I + use ARB_texture_rg R32UI + use ARB_texture_rg RG8I + use ARB_texture_rg RG8UI + use ARB_texture_rg RG16I + use ARB_texture_rg RG16UI + use ARB_texture_rg RG32I + use ARB_texture_rg RG32UI + +ARB_texture_rg enum: (note: no ARB suffixes) + RG = 0x8227 # VERSION_3_0 / ARB_trg + RG_INTEGER = 0x8228 # VERSION_3_0 / ARB_trg + R8 = 0x8229 # VERSION_3_0 / ARB_trg + R16 = 0x822A # VERSION_3_0 / ARB_trg + RG8 = 0x822B # VERSION_3_0 / ARB_trg + RG16 = 0x822C # VERSION_3_0 / ARB_trg + R16F = 0x822D # VERSION_3_0 / ARB_trg + R32F = 0x822E # VERSION_3_0 / ARB_trg + RG16F = 0x822F # VERSION_3_0 / ARB_trg + RG32F = 0x8230 # VERSION_3_0 / ARB_trg + R8I = 0x8231 # VERSION_3_0 / ARB_trg + R8UI = 0x8232 # VERSION_3_0 / ARB_trg + R16I = 0x8233 # VERSION_3_0 / ARB_trg + R16UI = 0x8234 # VERSION_3_0 / ARB_trg + R32I = 0x8235 # VERSION_3_0 / ARB_trg + R32UI = 0x8236 # VERSION_3_0 / ARB_trg + RG8I = 0x8237 # VERSION_3_0 / ARB_trg + RG8UI = 0x8238 # VERSION_3_0 / ARB_trg + RG16I = 0x8239 # VERSION_3_0 / ARB_trg + RG16UI = 0x823A # VERSION_3_0 / ARB_trg + RG32I = 0x823B # VERSION_3_0 / ARB_trg + RG32UI = 0x823C # VERSION_3_0 / ARB_trg + +# ARB_future_use: 0x823D-0x823F + +############################################################################### + +# @@@ Any_vendor_future_use: 0x8240-0x82AF (released by Microsoft 2002/9/16) + +############################################################################### + +# ADD: 0x82B0-0x830F + +############################################################################### + +SGIX_depth_pass_instrument enum: 0x8310-0x8312 + DEPTH_PASS_INSTRUMENT_SGIX = 0x8310 + DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX = 0x8311 + DEPTH_PASS_INSTRUMENT_MAX_SGIX = 0x8312 + +############################################################################### + +SGIX_fragments_instrument enum: 0x8313-0x8315 + FRAGMENTS_INSTRUMENT_SGIX = 0x8313 # 1 I + FRAGMENTS_INSTRUMENT_COUNTERS_SGIX = 0x8314 # 1 I + FRAGMENTS_INSTRUMENT_MAX_SGIX = 0x8315 # 1 I + +############################################################################### + +SGIX_convolution_accuracy enum: + CONVOLUTION_HINT_SGIX = 0x8316 # 1 I + +############################################################################### + +# SGIX_color_matrix_accuracy: 0x8317 + +############################################################################### + +# 0x8318-0x8319 +SGIX_ycrcba enum: + YCRCB_SGIX = 0x8318 + YCRCBA_SGIX = 0x8319 + +############################################################################### + +# 0x831A-0x831F +SGIX_slim enum: + UNPACK_COMPRESSED_SIZE_SGIX = 0x831A + PACK_MAX_COMPRESSED_SIZE_SGIX = 0x831B + PACK_COMPRESSED_SIZE_SGIX = 0x831C + SLIM8U_SGIX = 0x831D + SLIM10U_SGIX = 0x831E + SLIM12S_SGIX = 0x831F + +############################################################################### + +SGIX_blend_alpha_minmax enum: + ALPHA_MIN_SGIX = 0x8320 + ALPHA_MAX_SGIX = 0x8321 + +############################################################################### + +SGIX_scalebias_hint enum: + SCALEBIAS_HINT_SGIX = 0x8322 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fog_layers: 0x8323-0x8328 +# FOG_TYPE_SGIX = 0x8323 # 1 I +# UNIFORM_SGIX = 0x8324 +# LAYERED_SGIX = 0x8325 +# FOG_GROUND_PLANE_SGIX = 0x8326 # 4 F +# FOG_LAYERS_POINTS_SGIX = 0x8327 # 1 I +# MAX_FOG_LAYERS_POINTS_SGIX = 0x8328 # 1 I + +############################################################################### + +SGIX_async enum: + ASYNC_MARKER_SGIX = 0x8329 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_texture_phase: 0x832A +# PHASE_SGIX = 0x832A + +############################################################################### + +# SGIX_pixel_texture (additional; see above): 0x832B + +############################################################################### + +SGIX_async_histogram enum: + ASYNC_HISTOGRAM_SGIX = 0x832C + MAX_ASYNC_HISTOGRAM_SGIX = 0x832D + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_texture_mipmap_anisotropic: 0x832E-0x832F +# TEXTURE_MIPMAP_ANISOTROPY_SGIX = 0x832E +# MAX_MIPMAP_ANISOTROPY_SGIX = 0x832F # 1 I + +############################################################################### + +EXT_pixel_transform enum: + PIXEL_TRANSFORM_2D_EXT = 0x8330 + PIXEL_MAG_FILTER_EXT = 0x8331 + PIXEL_MIN_FILTER_EXT = 0x8332 + PIXEL_CUBIC_WEIGHT_EXT = 0x8333 + CUBIC_EXT = 0x8334 + AVERAGE_EXT = 0x8335 + PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336 + MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337 + PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338 + +# SUN_future_use: 0x8339-0x833F + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_cube_map: 0x8340-0x8348 +# ENV_MAP_SGIX = 0x8340 +# CUBE_MAP_SGIX = 0x8341 +# CUBE_MAP_ZP_SGIX = 0x8342 +# CUBE_MAP_ZN_SGIX = 0x8343 +# CUBE_MAP_XN_SGIX = 0x8344 +# CUBE_MAP_XP_SGIX = 0x8345 +# CUBE_MAP_YN_SGIX = 0x8346 +# CUBE_MAP_YP_SGIX = 0x8347 +# CUBE_MAP_BINDING_SGIX = 0x8348 # 1 I + +############################################################################### + +# Unfortunately, there was a collision promoting to EXT from SGIX. +# Use fog_coord's value of 0x8452 instead of the previously +# assigned FRAGMENT_DEPTH_EXT -> 0x834B. +# EXT_light_texture: 0x8349-0x8352 +EXT_light_texture enum: 0x8349-0x8352 + FRAGMENT_MATERIAL_EXT = 0x8349 + FRAGMENT_NORMAL_EXT = 0x834A + FRAGMENT_COLOR_EXT = 0x834C + ATTENUATION_EXT = 0x834D + SHADOW_ATTENUATION_EXT = 0x834E + TEXTURE_APPLICATION_MODE_EXT = 0x834F # 1 I + TEXTURE_LIGHT_EXT = 0x8350 # 1 I + TEXTURE_MATERIAL_FACE_EXT = 0x8351 # 1 I + TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352 # 1 I + use EXT_fog_coord FRAGMENT_DEPTH_EXT + +############################################################################### + +SGIS_pixel_texture enum: + PIXEL_TEXTURE_SGIS = 0x8353 # 1 I + PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354 # 1 I + PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = 0x8355 # 1 I + PIXEL_GROUP_COLOR_SGIS = 0x8356 # 1 I + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_pixel_texture_bits: 0x8357-0x8359 +# COLOR_TO_TEXTURE_COORD_SGIX = 0x8357 +# COLOR_BIT_PATTERN_SGIX = 0x8358 +# COLOR_VALUE_SGIX = 0x8359 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_pixel_texture_lod: 0x835A +# PIXEL_TEX_GEN_LAMBDA_SOURCE_SGIX = 0x835A + +############################################################################### + +SGIX_line_quality_hint enum: + LINE_QUALITY_HINT_SGIX = 0x835B + +############################################################################### + +SGIX_async_pixel enum: + ASYNC_TEX_IMAGE_SGIX = 0x835C + ASYNC_DRAW_PIXELS_SGIX = 0x835D + ASYNC_READ_PIXELS_SGIX = 0x835E + MAX_ASYNC_TEX_IMAGE_SGIX = 0x835F + MAX_ASYNC_DRAW_PIXELS_SGIX = 0x8360 + MAX_ASYNC_READ_PIXELS_SGIX = 0x8361 + +############################################################################### + +# EXT_packed_pixels (additional; see above): 0x8362-0x8368 + +############################################################################### + +SGIX_texture_coordinate_clamp enum: + TEXTURE_MAX_CLAMP_S_SGIX = 0x8369 + TEXTURE_MAX_CLAMP_T_SGIX = 0x836A + TEXTURE_MAX_CLAMP_R_SGIX = 0x836B + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fog_texture: 0x836C-0x836E +# FRAGMENT_FOG_SGIX = 0x836C +# TEXTURE_FOG_SGIX = 0x836D # 1 I +# FOG_PATCHY_FACTOR_SGIX = 0x836E + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fog_factor_to_alpha: 0x836F + FOG_FACTOR_TO_ALPHA_SGIX = 0x836F + +############################################################################### + +# HP: 0x8370-0x837F +# NOTE: IBM is using values in this range, because of a bobble +# when Pat Brown left at the same time as I assigned them the +# next range and their registry became inconsistent. Unknown +# whether HP has any conflicts as they have never reported using +# any values in this range. + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + MIRRORED_REPEAT = 0x8370 + +ARB_texture_mirrored_repeat enum: + MIRRORED_REPEAT_ARB = 0x8370 + +IBM_texture_mirrored_repeat enum: + MIRRORED_REPEAT_IBM = 0x8370 + +# Aliases ARB_texture_mirrored_repeat enum above +OES_texture_mirrored_repeat enum: (OpenGL ES only) + MIRRORED_REPEAT_OES = 0x8370 + +############################################################################### + +# IBM: 0x8380-0x839F + +############################################################################### + +# S3: 0x83A0-0x83BF + +S3_s3tc enum: + RGB_S3TC = 0x83A0 + RGB4_S3TC = 0x83A1 + RGBA_S3TC = 0x83A2 + RGBA4_S3TC = 0x83A3 + +# S3_future_use: 0x83A4-0x83BF + +############################################################################### + +# Obsolete extension, never to be put in enumext.spec +# SGIS_multitexture: 0x83C0-0x83E5 +# SELECTED_TEXTURE_SGIS = 0x83C0 # 1 I +# SELECTED_TEXTURE_COORD_SET_SGIS = 0x83C1 # 1 I +# SELECTED_TEXTURE_TRANSFORM_SGIS = 0x83C2 # 1 I +# MAX_TEXTURES_SGIS = 0x83C3 # 1 I +# MAX_TEXTURE_COORD_SETS_SGIS = 0x83C4 # 1 I +# TEXTURE_COORD_SET_INTERLEAVE_FACTOR_SGIS = 0x83C5 # 1 I +# TEXTURE_ENV_COORD_SET_SGIS = 0x83C6 +# TEXTURE0_SGIS = 0x83C7 +# TEXTURE1_SGIS = 0x83C8 +# TEXTURE2_SGIS = 0x83C9 +# TEXTURE3_SGIS = 0x83CA +# +# SGIS_multitexture_future_use: 0x83CB-0x83E5 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_bali_g_instruments: 0x83E6-0x83E9 +# BALI_NUM_TRIS_CULLED_INSTRUMENT_SGIX = 0x83E6 # 1 I +# BALI_NUM_PRIMS_CLIPPED_INSTRUMENT_SGIX = 0x83E7 # 1 I +# BALI_NUM_PRIMS_REJECT_INSTRUMENT_SGIX = 0x83E8 # 1 I +# BALI_NUM_PRIMS_CLIP_RESULT_INSTRUMENT_SGIX = 0x83E9 # 1 I + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_bali_r_instruments: 0x83EA-0x83EC +# BALI_FRAGMENTS_GENERATED_INSTRUMENT_SGIX = 0x83EA # 1 I +# BALI_DEPTH_PASS_INSTRUMENT_SGIX = 0x83EB # 1 I +# BALI_R_CHIP_COUNT_SGIX = 0x83EC # 1 I + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_occlusion_instrument: 0x83ED +# OCCLUSION_INSTRUMENT_SGIX = 0x83ED # 1 I + +############################################################################### + +SGIX_vertex_preclip enum: + VERTEX_PRECLIP_SGIX = 0x83EE + VERTEX_PRECLIP_HINT_SGIX = 0x83EF + +############################################################################### + +# INTEL: 0x83F0-0x83FF +# Note that this block was reclaimed from NTP, who never shipped it, +# and reassigned to Intel. + +EXT_texture_compression_s3tc enum: + COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0 + COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1 + COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2 + COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3 + +INTEL_parallel_arrays enum: + PARALLEL_ARRAYS_INTEL = 0x83F4 + VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5 + NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F6 + COLOR_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F7 + TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F8 + +# INTEL_future_use: 0x83F9-0x83FF + +############################################################################### + +SGIX_fragment_lighting enum: + FRAGMENT_LIGHTING_SGIX = 0x8400 # 1 I + FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401 # 1 I + FRAGMENT_COLOR_MATERIAL_FACE_SGIX = 0x8402 # 1 I + FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = 0x8403 # 1 I + MAX_FRAGMENT_LIGHTS_SGIX = 0x8404 # 1 I + MAX_ACTIVE_LIGHTS_SGIX = 0x8405 # 1 I + CURRENT_RASTER_NORMAL_SGIX = 0x8406 # 1 I + LIGHT_ENV_MODE_SGIX = 0x8407 # 1 I + FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = 0x8408 # 1 I + FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = 0x8409 # 1 I + FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = 0x840A # 4 F + FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = 0x840B # 1 I + FRAGMENT_LIGHT0_SGIX = 0x840C # 1 I + FRAGMENT_LIGHT1_SGIX = 0x840D + FRAGMENT_LIGHT2_SGIX = 0x840E + FRAGMENT_LIGHT3_SGIX = 0x840F + FRAGMENT_LIGHT4_SGIX = 0x8410 + FRAGMENT_LIGHT5_SGIX = 0x8411 + FRAGMENT_LIGHT6_SGIX = 0x8412 + FRAGMENT_LIGHT7_SGIX = 0x8413 + +# SGIX_fragment_lighting_future_use: 0x8414-0x842B + +############################################################################### + +SGIX_resample enum: + PACK_RESAMPLE_SGIX = 0x842C + UNPACK_RESAMPLE_SGIX = 0x842D + RESAMPLE_REPLICATE_SGIX = 0x842E + RESAMPLE_ZERO_FILL_SGIX = 0x842F + RESAMPLE_DECIMATE_SGIX = 0x8430 + +# SGIX_resample_future_use: 0x8431-0x8435 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_fragment_lighting_space: 0x8436-0x8449 +# EYE_SPACE_SGIX = 0x8436 +# TANGENT_SPACE_SGIX = 0x8437 +# OBJECT_SPACE_SGIX = 0x8438 +# TANGENT_ARRAY_SGIX = 0x8439 +# BINORMAL_ARRAY_SGIX = 0x843A +# CURRENT_TANGENT_SGIX = 0x843B # 3 F +# CURRENT_BINORMAL_SGIX = 0x843C # 3 F +# FRAGMENT_LIGHT_SPACE_SGIX = 0x843D # 1 I +# TANGENT_ARRAY_TYPE_SGIX = 0x843E +# TANGENT_ARRAY_STRIDE_SGIX = 0x843F +# TANGENT_ARRAY_COUNT_SGIX = 0x8440 +# BINORMAL_ARRAY_TYPE_SGIX = 0x8441 +# BINORMAL_ARRAY_STRIDE_SGIX = 0x8442 +# BINORMAL_ARRAY_COUNT_SGIX = 0x8443 +# TANGENT_ARRAY_POINTER_SGIX = 0x8444 +# BINORMAL_ARRAY_POINTER_SGIX = 0x8445 +# MAP1_TANGENT_SGIX = 0x8446 +# MAP2_TANGENT_SGIX = 0x8447 +# MAP1_BINORMAL_SGIX = 0x8448 +# MAP2_BINORMAL_SGIX = 0x8449 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_bali_timer_instruments: 0x844A-0x844C +# BALI_GEOM_TIMER_INSTRUMENT_SGIX = 0x844A # 1 I +# BALI_RASTER_TIMER_INSTRUMENT_SGIX = 0x844B # 1 I +# BALI_INSTRUMENT_TIME_UNIT_SGIX = 0x844C # 1 I + +############################################################################### + +# SGIX_clipmap (additional; see above): 0x844D-0x844F + +############################################################################### + +# SGI (actually brokered for Id Software): 0x8450-0x845F + +VERSION_1_5 enum: (Consistent naming scheme for OpenGL 1.5) + FOG_COORD_SRC = 0x8450 # alias GL_FOG_COORDINATE_SOURCE + FOG_COORD = 0x8451 # alias GL_FOG_COORDINATE + CURRENT_FOG_COORD = 0x8453 # alias GL_CURRENT_FOG_COORDINATE + FOG_COORD_ARRAY_TYPE = 0x8454 # alias GL_FOG_COORDINATE_ARRAY_TYPE + FOG_COORD_ARRAY_STRIDE = 0x8455 # alias GL_FOG_COORDINATE_ARRAY_STRIDE + FOG_COORD_ARRAY_POINTER = 0x8456 # alias GL_FOG_COORDINATE_ARRAY_POINTER + FOG_COORD_ARRAY = 0x8457 # alias GL_FOG_COORDINATE_ARRAY + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + FOG_COORDINATE_SOURCE = 0x8450 # 1 I + FOG_COORDINATE = 0x8451 + FRAGMENT_DEPTH = 0x8452 + CURRENT_FOG_COORDINATE = 0x8453 # 1 F + FOG_COORDINATE_ARRAY_TYPE = 0x8454 # 1 I + FOG_COORDINATE_ARRAY_STRIDE = 0x8455 # 1 I + FOG_COORDINATE_ARRAY_POINTER = 0x8456 + FOG_COORDINATE_ARRAY = 0x8457 # 1 I + +EXT_fog_coord enum: + FOG_COORDINATE_SOURCE_EXT = 0x8450 # 1 I + FOG_COORDINATE_EXT = 0x8451 + FRAGMENT_DEPTH_EXT = 0x8452 + CURRENT_FOG_COORDINATE_EXT = 0x8453 # 1 F + FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454 # 1 I + FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455 # 1 I + FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456 + FOG_COORDINATE_ARRAY_EXT = 0x8457 # 1 I + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + COLOR_SUM = 0x8458 # 1 I + CURRENT_SECONDARY_COLOR = 0x8459 # 3 F + SECONDARY_COLOR_ARRAY_SIZE = 0x845A # 1 I + SECONDARY_COLOR_ARRAY_TYPE = 0x845B # 1 I + SECONDARY_COLOR_ARRAY_STRIDE = 0x845C # 1 I + SECONDARY_COLOR_ARRAY_POINTER = 0x845D + SECONDARY_COLOR_ARRAY = 0x845E # 1 I + +EXT_secondary_color enum: + COLOR_SUM_EXT = 0x8458 # 1 I + CURRENT_SECONDARY_COLOR_EXT = 0x8459 # 3 F + SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A # 1 I + SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B # 1 I + SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C # 1 I + SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D + SECONDARY_COLOR_ARRAY_EXT = 0x845E # 1 I + +ARB_vertex_program enum: + COLOR_SUM_ARB = 0x8458 # 1 I # ARB_vertex_program + +VERSION_2_1 enum: + CURRENT_RASTER_SECONDARY_COLOR = 0x845F + +############################################################################### + +# Incomplete extension, not in enumext.spec +SGIX_icc_texture enum: +# RGB_ICC_SGIX = 0x8460 +# RGBA_ICC_SGIX = 0x8461 +# ALPHA_ICC_SGIX = 0x8462 +# LUMINANCE_ICC_SGIX = 0x8463 +# INTENSITY_ICC_SGIX = 0x8464 +# LUMINANCE_ALPHA_ICC_SGIX = 0x8465 +# R5_G6_B5_ICC_SGIX = 0x8466 +# R5_G6_B5_A8_ICC_SGIX = 0x8467 +# ALPHA16_ICC_SGIX = 0x8468 +# LUMINANCE16_ICC_SGIX = 0x8469 +# INTENSITY16_ICC_SGIX = 0x846A +# LUMINANCE16_ALPHA8_ICC_SGIX = 0x846B + +############################################################################### + +# SGI_future_use: 0x846C + +############################################################################### + +# SMOOTH_* enums are new names for pre-1.2 enums. +VERSION_1_2 enum: + SMOOTH_POINT_SIZE_RANGE = 0x0B12 # 2 F + SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13 # 1 F + SMOOTH_LINE_WIDTH_RANGE = 0x0B22 # 2 F + SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23 # 1 F + ALIASED_POINT_SIZE_RANGE = 0x846D # 2 F + ALIASED_LINE_WIDTH_RANGE = 0x846E # 2 F + +############################################################################### + +# SGI_future_use: 0x846F + +############################################################################### + +# ATI Technologies (vendor multitexture, spec not yet released): 0x8470-0x848F + +############################################################################### + +# REND (Rendition): 0x8490-0x849F + +REND_screen_coordinates enum: + SCREEN_COORDINATES_REND = 0x8490 + INVERTED_SCREEN_W_REND = 0x8491 + +############################################################################### + +# ATI Technologies (vendor multitexture, spec not yet released): 0x84A0-84BF + +############################################################################### + +# OpenGL ARB: 0x84C0-0x84EF + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + TEXTURE0 = 0x84C0 + TEXTURE1 = 0x84C1 + TEXTURE2 = 0x84C2 + TEXTURE3 = 0x84C3 + TEXTURE4 = 0x84C4 + TEXTURE5 = 0x84C5 + TEXTURE6 = 0x84C6 + TEXTURE7 = 0x84C7 + TEXTURE8 = 0x84C8 + TEXTURE9 = 0x84C9 + TEXTURE10 = 0x84CA + TEXTURE11 = 0x84CB + TEXTURE12 = 0x84CC + TEXTURE13 = 0x84CD + TEXTURE14 = 0x84CE + TEXTURE15 = 0x84CF + TEXTURE16 = 0x84D0 + TEXTURE17 = 0x84D1 + TEXTURE18 = 0x84D2 + TEXTURE19 = 0x84D3 + TEXTURE20 = 0x84D4 + TEXTURE21 = 0x84D5 + TEXTURE22 = 0x84D6 + TEXTURE23 = 0x84D7 + TEXTURE24 = 0x84D8 + TEXTURE25 = 0x84D9 + TEXTURE26 = 0x84DA + TEXTURE27 = 0x84DB + TEXTURE28 = 0x84DC + TEXTURE29 = 0x84DD + TEXTURE30 = 0x84DE + TEXTURE31 = 0x84DF + ACTIVE_TEXTURE = 0x84E0 # 1 I + CLIENT_ACTIVE_TEXTURE = 0x84E1 # 1 I + MAX_TEXTURE_UNITS = 0x84E2 # 1 I + +ARB_multitexture enum: + TEXTURE0_ARB = 0x84C0 + TEXTURE1_ARB = 0x84C1 + TEXTURE2_ARB = 0x84C2 + TEXTURE3_ARB = 0x84C3 + TEXTURE4_ARB = 0x84C4 + TEXTURE5_ARB = 0x84C5 + TEXTURE6_ARB = 0x84C6 + TEXTURE7_ARB = 0x84C7 + TEXTURE8_ARB = 0x84C8 + TEXTURE9_ARB = 0x84C9 + TEXTURE10_ARB = 0x84CA + TEXTURE11_ARB = 0x84CB + TEXTURE12_ARB = 0x84CC + TEXTURE13_ARB = 0x84CD + TEXTURE14_ARB = 0x84CE + TEXTURE15_ARB = 0x84CF + TEXTURE16_ARB = 0x84D0 + TEXTURE17_ARB = 0x84D1 + TEXTURE18_ARB = 0x84D2 + TEXTURE19_ARB = 0x84D3 + TEXTURE20_ARB = 0x84D4 + TEXTURE21_ARB = 0x84D5 + TEXTURE22_ARB = 0x84D6 + TEXTURE23_ARB = 0x84D7 + TEXTURE24_ARB = 0x84D8 + TEXTURE25_ARB = 0x84D9 + TEXTURE26_ARB = 0x84DA + TEXTURE27_ARB = 0x84DB + TEXTURE28_ARB = 0x84DC + TEXTURE29_ARB = 0x84DD + TEXTURE30_ARB = 0x84DE + TEXTURE31_ARB = 0x84DF + ACTIVE_TEXTURE_ARB = 0x84E0 # 1 I + CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1 # 1 I + MAX_TEXTURE_UNITS_ARB = 0x84E2 # 1 I + +# These are really core ES 1.1 enums, but haven't included +# ES core enums in enum.spec yet +OES_texture_env_crossbar enum: (OpenGL ES only) + use VERSION_1_3 TEXTURE0 + use VERSION_1_3 TEXTURE1 + use VERSION_1_3 TEXTURE2 + use VERSION_1_3 TEXTURE3 + use VERSION_1_3 TEXTURE4 + use VERSION_1_3 TEXTURE5 + use VERSION_1_3 TEXTURE6 + use VERSION_1_3 TEXTURE7 + use VERSION_1_3 TEXTURE8 + use VERSION_1_3 TEXTURE9 + use VERSION_1_3 TEXTURE10 + use VERSION_1_3 TEXTURE11 + use VERSION_1_3 TEXTURE12 + use VERSION_1_3 TEXTURE13 + use VERSION_1_3 TEXTURE14 + use VERSION_1_3 TEXTURE15 + use VERSION_1_3 TEXTURE16 + use VERSION_1_3 TEXTURE17 + use VERSION_1_3 TEXTURE18 + use VERSION_1_3 TEXTURE19 + use VERSION_1_3 TEXTURE20 + use VERSION_1_3 TEXTURE21 + use VERSION_1_3 TEXTURE22 + use VERSION_1_3 TEXTURE23 + use VERSION_1_3 TEXTURE24 + use VERSION_1_3 TEXTURE25 + use VERSION_1_3 TEXTURE26 + use VERSION_1_3 TEXTURE27 + use VERSION_1_3 TEXTURE28 + use VERSION_1_3 TEXTURE29 + use VERSION_1_3 TEXTURE30 + use VERSION_1_3 TEXTURE31 + +############################################################################### + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + TRANSPOSE_MODELVIEW_MATRIX = 0x84E3 # 16 F + TRANSPOSE_PROJECTION_MATRIX = 0x84E4 # 16 F + TRANSPOSE_TEXTURE_MATRIX = 0x84E5 # 16 F + TRANSPOSE_COLOR_MATRIX = 0x84E6 # 16 F + +ARB_transpose_matrix enum: + TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3 # 16 F + TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4 # 16 F + TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5 # 16 F + TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6 # 16 F + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + SUBTRACT = 0x84E7 + +ARB_texture_env_combine enum: + SUBTRACT_ARB = 0x84E7 + +VERSION_3_0 enum: + use ARB_framebuffer_object MAX_RENDERBUFFER_SIZE + +ARB_framebuffer_object enum: (note: no ARB suffixes) + MAX_RENDERBUFFER_SIZE = 0x84E8 # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_object enum: (additional; see below): + MAX_RENDERBUFFER_SIZE_EXT = 0x84E8 + +# Aliases EXT_framebuffer_object enum above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + MAX_RENDERBUFFER_SIZE_OES = 0x84E8 + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + COMPRESSED_ALPHA = 0x84E9 + COMPRESSED_LUMINANCE = 0x84EA + COMPRESSED_LUMINANCE_ALPHA = 0x84EB + COMPRESSED_INTENSITY = 0x84EC + COMPRESSED_RGB = 0x84ED + COMPRESSED_RGBA = 0x84EE + TEXTURE_COMPRESSION_HINT = 0x84EF + TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0 + TEXTURE_COMPRESSED = 0x86A1 + NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2 + COMPRESSED_TEXTURE_FORMATS = 0x86A3 + +ARB_texture_compression enum: + COMPRESSED_ALPHA_ARB = 0x84E9 + COMPRESSED_LUMINANCE_ARB = 0x84EA + COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB + COMPRESSED_INTENSITY_ARB = 0x84EC + COMPRESSED_RGB_ARB = 0x84ED + COMPRESSED_RGBA_ARB = 0x84EE + TEXTURE_COMPRESSION_HINT_ARB = 0x84EF + TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0 + TEXTURE_COMPRESSED_ARB = 0x86A1 + NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2 + COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3 + +############################################################################### + +# NVIDIA: 0x84F0-0x855F + +# NV_future_use: 0x84F0-0x84F1 + +NV_fence enum: + ALL_COMPLETED_NV = 0x84F2 + FENCE_STATUS_NV = 0x84F3 + FENCE_CONDITION_NV = 0x84F4 + +VERSION_3_1 enum: + TEXTURE_RECTANGLE = 0x84F5 + TEXTURE_BINDING_RECTANGLE = 0x84F6 + PROXY_TEXTURE_RECTANGLE = 0x84F7 + MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8 + +ARB_texture_rectangle enum: + TEXTURE_RECTANGLE_ARB = 0x84F5 + TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6 + PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7 + MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8 + +NV_texture_rectangle enum: + TEXTURE_RECTANGLE_NV = 0x84F5 + TEXTURE_BINDING_RECTANGLE_NV = 0x84F6 + PROXY_TEXTURE_RECTANGLE_NV = 0x84F7 + MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8 + +VERSION_3_0 enum: + use ARB_framebuffer_object DEPTH_STENCIL + use ARB_framebuffer_object UNSIGNED_INT_24_8 + +ARB_framebuffer_object enum: (note: no ARB suffixes) + DEPTH_STENCIL = 0x84F9 # VERSION_3_0 / ARB_fbo + UNSIGNED_INT_24_8 = 0x84FA # VERSION_3_0 / ARB_fbo + +EXT_packed_depth_stencil enum: + DEPTH_STENCIL_EXT = 0x84F9 + UNSIGNED_INT_24_8_EXT = 0x84FA + +NV_packed_depth_stencil enum: + DEPTH_STENCIL_NV = 0x84F9 + UNSIGNED_INT_24_8_NV = 0x84FA + +# Aliases EXT_packed_depth_stencil enums above +OES_packed_depth_stencil enum: (OpenGL ES only) + DEPTH_STENCIL_OES = 0x84F9 + UNSIGNED_INT_24_8_OES = 0x84FA + +# NV_future_use: 0x84FB-0x84FC + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + MAX_TEXTURE_LOD_BIAS = 0x84FD + +EXT_texture_lod_bias enum: + MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD + +EXT_texture_filter_anisotropic enum: + TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE + MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + TEXTURE_FILTER_CONTROL = 0x8500 + TEXTURE_LOD_BIAS = 0x8501 + +EXT_texture_lod_bias enum: + TEXTURE_FILTER_CONTROL_EXT = 0x8500 + TEXTURE_LOD_BIAS_EXT = 0x8501 + +EXT_vertex_weighting enum: + MODELVIEW1_STACK_DEPTH_EXT = 0x8502 + +# NV_texture_env_combine4 (additional; see below): 0x8503 + +NV_light_max_exponent enum: + MAX_SHININESS_NV = 0x8504 + MAX_SPOT_EXPONENT_NV = 0x8505 + +EXT_vertex_weighting enum: + MODELVIEW_MATRIX1_EXT = 0x8506 + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + INCR_WRAP = 0x8507 + DECR_WRAP = 0x8508 + +EXT_stencil_wrap enum: + INCR_WRAP_EXT = 0x8507 + DECR_WRAP_EXT = 0x8508 + +# Aliases EXT_stencil_wrap enums above +OES_stencil_wrap enum: (OpenGL ES only) + INCR_WRAP_OES = 0x8507 + DECR_WRAP_OES = 0x8508 + +EXT_vertex_weighting enum: + VERTEX_WEIGHTING_EXT = 0x8509 + MODELVIEW1_EXT = 0x850A + CURRENT_VERTEX_WEIGHT_EXT = 0x850B + VERTEX_WEIGHT_ARRAY_EXT = 0x850C + VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D + VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E + VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F + VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510 + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + NORMAL_MAP = 0x8511 + REFLECTION_MAP = 0x8512 + TEXTURE_CUBE_MAP = 0x8513 + TEXTURE_BINDING_CUBE_MAP = 0x8514 + TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515 + TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516 + TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517 + TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518 + TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519 + TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A + PROXY_TEXTURE_CUBE_MAP = 0x851B + MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C + +EXT_texture_cube_map enum: + NORMAL_MAP_EXT = 0x8511 + REFLECTION_MAP_EXT = 0x8512 + TEXTURE_CUBE_MAP_EXT = 0x8513 + TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514 + TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515 + TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516 + TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517 + TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518 + TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519 + TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A + PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B + MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C + +NV_texgen_reflection enum: + NORMAL_MAP = 0x8511 + REFLECTION_MAP = 0x8512 + +ARB_texture_cube_map enum: + NORMAL_MAP_ARB = 0x8511 + REFLECTION_MAP_ARB = 0x8512 + TEXTURE_CUBE_MAP_ARB = 0x8513 + TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514 + TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515 + TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516 + TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517 + TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518 + TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519 + TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A + PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B + MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C + +# Aliases ARB_texture_cube_map enums above +OES_texture_cube_map enum: (OpenGL ES only; additional; see below) + NORMAL_MAP_OES = 0x8511 + REFLECTION_MAP_OES = 0x8512 + TEXTURE_CUBE_MAP_OES = 0x8513 + TEXTURE_BINDING_CUBE_MAP_OES = 0x8514 + TEXTURE_CUBE_MAP_POSITIVE_X_OES = 0x8515 + TEXTURE_CUBE_MAP_NEGATIVE_X_OES = 0x8516 + TEXTURE_CUBE_MAP_POSITIVE_Y_OES = 0x8517 + TEXTURE_CUBE_MAP_NEGATIVE_Y_OES = 0x8518 + TEXTURE_CUBE_MAP_POSITIVE_Z_OES = 0x8519 + TEXTURE_CUBE_MAP_NEGATIVE_Z_OES = 0x851A + MAX_CUBE_MAP_TEXTURE_SIZE_OES = 0x851C + +NV_vertex_array_range enum: + VERTEX_ARRAY_RANGE_NV = 0x851D + VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E + VERTEX_ARRAY_RANGE_VALID_NV = 0x851F + MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520 + VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521 + +# @@@ How does this interact with NV_vertex_array_range? +APPLE_vertex_array_range enum: + VERTEX_ARRAY_RANGE_APPLE = 0x851D + VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E + VERTEX_ARRAY_STORAGE_HINT_APPLE = 0x851F + VERTEX_ARRAY_RANGE_POINTER_APPLE = 0x8521 + STORAGE_CACHED_APPLE = 0x85BE + STORAGE_SHARED_APPLE = 0x85BF + +NV_register_combiners enum: + REGISTER_COMBINERS_NV = 0x8522 + VARIABLE_A_NV = 0x8523 + VARIABLE_B_NV = 0x8524 + VARIABLE_C_NV = 0x8525 + VARIABLE_D_NV = 0x8526 + VARIABLE_E_NV = 0x8527 + VARIABLE_F_NV = 0x8528 + VARIABLE_G_NV = 0x8529 + CONSTANT_COLOR0_NV = 0x852A + CONSTANT_COLOR1_NV = 0x852B + PRIMARY_COLOR_NV = 0x852C + SECONDARY_COLOR_NV = 0x852D + SPARE0_NV = 0x852E + SPARE1_NV = 0x852F + DISCARD_NV = 0x8530 + E_TIMES_F_NV = 0x8531 + SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532 + +# NV_vertex_array_range2: + VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533 + +# NV_multisample_filter_hint: + MULTISAMPLE_FILTER_HINT_NV = 0x8534 + +NV_register_combiners2 enum: + PER_STAGE_CONSTANTS_NV = 0x8535 + +NV_register_combiners enum: (additional; see above): + UNSIGNED_IDENTITY_NV = 0x8536 + UNSIGNED_INVERT_NV = 0x8537 + EXPAND_NORMAL_NV = 0x8538 + EXPAND_NEGATE_NV = 0x8539 + HALF_BIAS_NORMAL_NV = 0x853A + HALF_BIAS_NEGATE_NV = 0x853B + SIGNED_IDENTITY_NV = 0x853C + UNSIGNED_NEGATE_NV = 0x853D + SCALE_BY_TWO_NV = 0x853E + SCALE_BY_FOUR_NV = 0x853F + SCALE_BY_ONE_HALF_NV = 0x8540 + BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541 + COMBINER_INPUT_NV = 0x8542 + COMBINER_MAPPING_NV = 0x8543 + COMBINER_COMPONENT_USAGE_NV = 0x8544 + COMBINER_AB_DOT_PRODUCT_NV = 0x8545 + COMBINER_CD_DOT_PRODUCT_NV = 0x8546 + COMBINER_MUX_SUM_NV = 0x8547 + COMBINER_SCALE_NV = 0x8548 + COMBINER_BIAS_NV = 0x8549 + COMBINER_AB_OUTPUT_NV = 0x854A + COMBINER_CD_OUTPUT_NV = 0x854B + COMBINER_SUM_OUTPUT_NV = 0x854C + MAX_GENERAL_COMBINERS_NV = 0x854D + NUM_GENERAL_COMBINERS_NV = 0x854E + COLOR_SUM_CLAMP_NV = 0x854F + COMBINER0_NV = 0x8550 + COMBINER1_NV = 0x8551 + COMBINER2_NV = 0x8552 + COMBINER3_NV = 0x8553 + COMBINER4_NV = 0x8554 + COMBINER5_NV = 0x8555 + COMBINER6_NV = 0x8556 + COMBINER7_NV = 0x8557 + + +NV_primitive_restart enum: + PRIMITIVE_RESTART_NV = 0x8558 + PRIMITIVE_RESTART_INDEX_NV = 0x8559 + +NV_fog_distance enum: + FOG_GEN_MODE_NV = 0x855A + EYE_RADIAL_NV = 0x855B + EYE_PLANE_ABSOLUTE_NV = 0x855C + +NV_texgen_emboss enum: + EMBOSS_LIGHT_NV = 0x855D + EMBOSS_CONSTANT_NV = 0x855E + EMBOSS_MAP_NV = 0x855F + +############################################################################### + +# Intergraph/Intense3D/3Dlabs: 0x8560-0x856F + +INGR_color_clamp enum: + RED_MIN_CLAMP_INGR = 0x8560 + GREEN_MIN_CLAMP_INGR = 0x8561 + BLUE_MIN_CLAMP_INGR = 0x8562 + ALPHA_MIN_CLAMP_INGR = 0x8563 + RED_MAX_CLAMP_INGR = 0x8564 + GREEN_MAX_CLAMP_INGR = 0x8565 + BLUE_MAX_CLAMP_INGR = 0x8566 + ALPHA_MAX_CLAMP_INGR = 0x8567 + +INGR_interlace_read enum: + INTERLACE_READ_INGR = 0x8568 + +# 3Dlabs_future_use: 0x8569-0x856F + +############################################################################### + +# ATI/NVIDIA: 0x8570-0x859F + +VERSION_1_5 enum: (Consistent naming scheme for OpenGL 1.5) + SRC0_RGB = 0x8580 # alias GL_SOURCE0_RGB + SRC1_RGB = 0x8581 # alias GL_SOURCE1_RGB + SRC2_RGB = 0x8582 # alias GL_SOURCE2_RGB + SRC0_ALPHA = 0x8588 # alias GL_SOURCE0_ALPHA + SRC1_ALPHA = 0x8589 # alias GL_SOURCE1_ALPHA + SRC2_ALPHA = 0x858A # alias GL_SOURCE2_ALPHA + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + COMBINE = 0x8570 + COMBINE_RGB = 0x8571 + COMBINE_ALPHA = 0x8572 + RGB_SCALE = 0x8573 + ADD_SIGNED = 0x8574 + INTERPOLATE = 0x8575 + CONSTANT = 0x8576 + PRIMARY_COLOR = 0x8577 + PREVIOUS = 0x8578 + SOURCE0_RGB = 0x8580 + SOURCE1_RGB = 0x8581 + SOURCE2_RGB = 0x8582 + SOURCE0_ALPHA = 0x8588 + SOURCE1_ALPHA = 0x8589 + SOURCE2_ALPHA = 0x858A + OPERAND0_RGB = 0x8590 + OPERAND1_RGB = 0x8591 + OPERAND2_RGB = 0x8592 + OPERAND0_ALPHA = 0x8598 + OPERAND1_ALPHA = 0x8599 + OPERAND2_ALPHA = 0x859A + +EXT_texture_env_combine enum: + COMBINE_EXT = 0x8570 + COMBINE_RGB_EXT = 0x8571 + COMBINE_ALPHA_EXT = 0x8572 + RGB_SCALE_EXT = 0x8573 + ADD_SIGNED_EXT = 0x8574 + INTERPOLATE_EXT = 0x8575 + CONSTANT_EXT = 0x8576 + PRIMARY_COLOR_EXT = 0x8577 + PREVIOUS_EXT = 0x8578 + SOURCE0_RGB_EXT = 0x8580 + SOURCE1_RGB_EXT = 0x8581 + SOURCE2_RGB_EXT = 0x8582 + SOURCE0_ALPHA_EXT = 0x8588 + SOURCE1_ALPHA_EXT = 0x8589 + SOURCE2_ALPHA_EXT = 0x858A + OPERAND0_RGB_EXT = 0x8590 + OPERAND1_RGB_EXT = 0x8591 + OPERAND2_RGB_EXT = 0x8592 + OPERAND0_ALPHA_EXT = 0x8598 + OPERAND1_ALPHA_EXT = 0x8599 + OPERAND2_ALPHA_EXT = 0x859A + +NV_texture_env_combine4 enum: + COMBINE4_NV = 0x8503 + SOURCE3_RGB_NV = 0x8583 + SOURCE3_ALPHA_NV = 0x858B + OPERAND3_RGB_NV = 0x8593 + OPERAND3_ALPHA_NV = 0x859B + +# "Future use" => "additional combiner input/output enums" only +# ATI/NVIDIA_future_use: 0x8584-0x8587 +# ATI/NVIDIA_future_use: 0x858C-0x858F +# ATI/NVIDIA_future_use: 0x8594-0x8597 +# ATI/NVIDIA_future_use: 0x859C-0x859F + +############################################################################### + +SGIX_subsample enum: + PACK_SUBSAMPLE_RATE_SGIX = 0x85A0 + UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1 + PIXEL_SUBSAMPLE_4444_SGIX = 0x85A2 + PIXEL_SUBSAMPLE_2424_SGIX = 0x85A3 + PIXEL_SUBSAMPLE_4242_SGIX = 0x85A4 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIS_color_range: 0x85A5-0x85AD +# EXTENDED_RANGE_SGIS = 0x85A5 +# MIN_RED_SGIS = 0x85A6 +# MAX_RED_SGIS = 0x85A7 +# MIN_GREEN_SGIS = 0x85A8 +# MAX_GREEN_SGIS = 0x85A9 +# MIN_BLUE_SGIS = 0x85AA +# MAX_BLUE_SGIS = 0x85AB +# MIN_ALPHA_SGIS = 0x85AC +# MAX_ALPHA_SGIS = 0x85AD + +############################################################################### + +EXT_texture_perturb_normal enum: + PERTURB_EXT = 0x85AE + TEXTURE_NORMAL_EXT = 0x85AF + +############################################################################### + +# Apple: 0x85B0-0x85BF + +APPLE_specular_vector enum: + LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0 + +APPLE_transform_hint enum: + TRANSFORM_HINT_APPLE = 0x85B1 + +APPLE_client_storage enum: + UNPACK_CLIENT_STORAGE_APPLE = 0x85B2 + +# May also be part of APPLE_fence +APPLE_object_purgeable enum: (additional; see below) + BUFFER_OBJECT_APPLE = 0x85B3 + +# APPLE_future_use: 0x85B4 + +## From Jeremy 2006/10/18 (Bugzilla bug 632) - unknown extension name +# STORAGE_CLIENT_APPLE = 0x85B4 + +VERSION_3_0 enum: + use ARB_vertex_array_object VERTEX_ARRAY_BINDING + +ARB_vertex_array_object enum: (note: no ARB suffixes) + VERTEX_ARRAY_BINDING = 0x85B5 # VERSION_3_0 / ARB_vao + +APPLE_vertex_array_object enum: + VERTEX_ARRAY_BINDING_APPLE = 0x85B5 + +# APPLE_future_use: 0x85B6 +## From Jeremy 2006/10/18 (Bugzilla bug 632) - unknown extension name +# TEXTURE_MINIMIZE_STORAGE_APPLE = 0x85B6 + +APPLE_texture_range enum: (additional; see below) + TEXTURE_RANGE_LENGTH_APPLE = 0x85B7 + TEXTURE_RANGE_POINTER_APPLE = 0x85B8 + +APPLE_ycbcr_422 enum: + YCBCR_422_APPLE = 0x85B9 + UNSIGNED_SHORT_8_8_APPLE = 0x85BA + UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB + +MESA_ycbcr_texture enum: (additional; see below) + UNSIGNED_SHORT_8_8_MESA = 0x85BA + UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB + +APPLE_texture_range enum: + TEXTURE_STORAGE_HINT_APPLE = 0x85BC + STORAGE_PRIVATE_APPLE = 0x85BD + +APPLE_vertex_array_range enum: (additional; see above): + STORAGE_CACHED_APPLE = 0x85BE + STORAGE_SHARED_APPLE = 0x85BF + +APPLE_texture_range enum: + use APPLE_vertex_array_range STORAGE_CACHED_APPLE + use APPLE_vertex_array_range STORAGE_SHARED_APPLE + +############################################################################### + +# Sun: 0x85C0-0x85CF + +SUNX_general_triangle_list enum: (additional; see above) + REPLACEMENT_CODE_ARRAY_SUN = 0x85C0 + REPLACEMENT_CODE_ARRAY_TYPE_SUN = 0x85C1 + REPLACEMENT_CODE_ARRAY_STRIDE_SUN = 0x85C2 + REPLACEMENT_CODE_ARRAY_POINTER_SUN = 0x85C3 + R1UI_V3F_SUN = 0x85C4 + R1UI_C4UB_V3F_SUN = 0x85C5 + R1UI_C3F_V3F_SUN = 0x85C6 + R1UI_N3F_V3F_SUN = 0x85C7 + R1UI_C4F_N3F_V3F_SUN = 0x85C8 + R1UI_T2F_V3F_SUN = 0x85C9 + R1UI_T2F_N3F_V3F_SUN = 0x85CA + R1UI_T2F_C4F_N3F_V3F_SUN = 0x85CB + +SUN_slice_accum enum: + SLICE_ACCUM_SUN = 0x85CC + +# SUN_future_use: 0x85CD-0x85CF + +############################################################################### + +# Unknown extension name, not in enumext.spec +# 3Dlabs/Autodesk: 0x85D0-0x85DF +# FACET_NORMAL_AUTODESK = 0x85D0 +# FACET_NORMAL_ARRAY_AUTODESK = 0x85D1 + +############################################################################### + +# Incomplete extension, not in enumext.spec +# SGIX_texture_range: 0x85E0-0x85FB +# RGB_SIGNED_SGIX = 0x85E0 +# RGBA_SIGNED_SGIX = 0x85E1 +# ALPHA_SIGNED_SGIX = 0x85E2 +# LUMINANCE_SIGNED_SGIX = 0x85E3 +# INTENSITY_SIGNED_SGIX = 0x85E4 +# LUMINANCE_ALPHA_SIGNED_SGIX = 0x85E5 +# RGB16_SIGNED_SGIX = 0x85E6 +# RGBA16_SIGNED_SGIX = 0x85E7 +# ALPHA16_SIGNED_SGIX = 0x85E8 +# LUMINANCE16_SIGNED_SGIX = 0x85E9 +# INTENSITY16_SIGNED_SGIX = 0x85EA +# LUMINANCE16_ALPHA16_SIGNED_SGIX = 0x85EB +# RGB_EXTENDED_RANGE_SGIX = 0x85EC +# RGBA_EXTENDED_RANGE_SGIX = 0x85ED +# ALPHA_EXTENDED_RANGE_SGIX = 0x85EE +# LUMINANCE_EXTENDED_RANGE_SGIX = 0x85EF +# INTENSITY_EXTENDED_RANGE_SGIX = 0x85F0 +# LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX = 0x85F1 +# RGB16_EXTENDED_RANGE_SGIX = 0x85F2 +# RGBA16_EXTENDED_RANGE_SGIX = 0x85F3 +# ALPHA16_EXTENDED_RANGE_SGIX = 0x85F4 +# LUMINANCE16_EXTENDED_RANGE_SGIX = 0x85F5 +# INTENSITY16_EXTENDED_RANGE_SGIX = 0x85F6 +# LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX = 0x85F7 +# MIN_LUMINANCE_SGIS = 0x85F8 +# MAX_LUMINANCE_SGIS = 0x85F9 +# MIN_INTENSITY_SGIS = 0x85FA +# MAX_INTENSITY_SGIS = 0x85FB + +############################################################################### + +# SGI_future_use: 0x85FC-0x85FF + +############################################################################### + +# Sun: 0x8600-0x861F + +# SUN_future_use: 0x8600-0x8613 + +SUN_mesh_array enum: 0x8614-0x8615 + QUAD_MESH_SUN = 0x8614 + TRIANGLE_MESH_SUN = 0x8615 + +# SUN_future_use: 0x8614-0x861F + +############################################################################### + +# NVIDIA: 0x8620-0x867F + +NV_vertex_program enum: + VERTEX_PROGRAM_NV = 0x8620 + VERTEX_STATE_PROGRAM_NV = 0x8621 + ATTRIB_ARRAY_SIZE_NV = 0x8623 + ATTRIB_ARRAY_STRIDE_NV = 0x8624 + ATTRIB_ARRAY_TYPE_NV = 0x8625 + CURRENT_ATTRIB_NV = 0x8626 + PROGRAM_LENGTH_NV = 0x8627 + PROGRAM_STRING_NV = 0x8628 + MODELVIEW_PROJECTION_NV = 0x8629 + IDENTITY_NV = 0x862A + INVERSE_NV = 0x862B + TRANSPOSE_NV = 0x862C + INVERSE_TRANSPOSE_NV = 0x862D + MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E + MAX_TRACK_MATRICES_NV = 0x862F + MATRIX0_NV = 0x8630 + MATRIX1_NV = 0x8631 + MATRIX2_NV = 0x8632 + MATRIX3_NV = 0x8633 + MATRIX4_NV = 0x8634 + MATRIX5_NV = 0x8635 + MATRIX6_NV = 0x8636 + MATRIX7_NV = 0x8637 +################## +# +# Reserved: +# +# MATRIX8_NV = 0x8638 +# MATRIX9_NV = 0x8639 +# MATRIX10_NV = 0x863A +# MATRIX11_NV = 0x863B +# MATRIX12_NV = 0x863C +# MATRIX13_NV = 0x863D +# MATRIX14_NV = 0x863E +# MATRIX15_NV = 0x863F +# +################### + CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640 + CURRENT_MATRIX_NV = 0x8641 + VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642 + VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643 + PROGRAM_PARAMETER_NV = 0x8644 + ATTRIB_ARRAY_POINTER_NV = 0x8645 + PROGRAM_TARGET_NV = 0x8646 + PROGRAM_RESIDENT_NV = 0x8647 + TRACK_MATRIX_NV = 0x8648 + TRACK_MATRIX_TRANSFORM_NV = 0x8649 + VERTEX_PROGRAM_BINDING_NV = 0x864A + PROGRAM_ERROR_POSITION_NV = 0x864B + VERTEX_ATTRIB_ARRAY0_NV = 0x8650 + VERTEX_ATTRIB_ARRAY1_NV = 0x8651 + VERTEX_ATTRIB_ARRAY2_NV = 0x8652 + VERTEX_ATTRIB_ARRAY3_NV = 0x8653 + VERTEX_ATTRIB_ARRAY4_NV = 0x8654 + VERTEX_ATTRIB_ARRAY5_NV = 0x8655 + VERTEX_ATTRIB_ARRAY6_NV = 0x8656 + VERTEX_ATTRIB_ARRAY7_NV = 0x8657 + VERTEX_ATTRIB_ARRAY8_NV = 0x8658 + VERTEX_ATTRIB_ARRAY9_NV = 0x8659 + VERTEX_ATTRIB_ARRAY10_NV = 0x865A + VERTEX_ATTRIB_ARRAY11_NV = 0x865B + VERTEX_ATTRIB_ARRAY12_NV = 0x865C + VERTEX_ATTRIB_ARRAY13_NV = 0x865D + VERTEX_ATTRIB_ARRAY14_NV = 0x865E + VERTEX_ATTRIB_ARRAY15_NV = 0x865F + MAP1_VERTEX_ATTRIB0_4_NV = 0x8660 + MAP1_VERTEX_ATTRIB1_4_NV = 0x8661 + MAP1_VERTEX_ATTRIB2_4_NV = 0x8662 + MAP1_VERTEX_ATTRIB3_4_NV = 0x8663 + MAP1_VERTEX_ATTRIB4_4_NV = 0x8664 + MAP1_VERTEX_ATTRIB5_4_NV = 0x8665 + MAP1_VERTEX_ATTRIB6_4_NV = 0x8666 + MAP1_VERTEX_ATTRIB7_4_NV = 0x8667 + MAP1_VERTEX_ATTRIB8_4_NV = 0x8668 + MAP1_VERTEX_ATTRIB9_4_NV = 0x8669 + MAP1_VERTEX_ATTRIB10_4_NV = 0x866A + MAP1_VERTEX_ATTRIB11_4_NV = 0x866B + MAP1_VERTEX_ATTRIB12_4_NV = 0x866C + MAP1_VERTEX_ATTRIB13_4_NV = 0x866D + MAP1_VERTEX_ATTRIB14_4_NV = 0x866E + MAP1_VERTEX_ATTRIB15_4_NV = 0x866F + MAP2_VERTEX_ATTRIB0_4_NV = 0x8670 + MAP2_VERTEX_ATTRIB1_4_NV = 0x8671 + MAP2_VERTEX_ATTRIB2_4_NV = 0x8672 + MAP2_VERTEX_ATTRIB3_4_NV = 0x8673 + MAP2_VERTEX_ATTRIB4_4_NV = 0x8674 + MAP2_VERTEX_ATTRIB5_4_NV = 0x8675 + MAP2_VERTEX_ATTRIB6_4_NV = 0x8676 + MAP2_VERTEX_ATTRIB7_4_NV = 0x8677 + MAP2_VERTEX_ATTRIB8_4_NV = 0x8678 + MAP2_VERTEX_ATTRIB9_4_NV = 0x8679 + MAP2_VERTEX_ATTRIB10_4_NV = 0x867A + MAP2_VERTEX_ATTRIB11_4_NV = 0x867B + MAP2_VERTEX_ATTRIB12_4_NV = 0x867C + MAP2_VERTEX_ATTRIB13_4_NV = 0x867D + MAP2_VERTEX_ATTRIB14_4_NV = 0x867E + MAP2_VERTEX_ATTRIB15_4_NV = 0x867F + +# NV_texture_shader (additional; see below): 0x864C-0x864E + +VERSION_3_2 enum: + PROGRAM_POINT_SIZE = 0x8642 + +ARB_geometry_shader4 enum: (additional; see below) + PROGRAM_POINT_SIZE_ARB = 0x8642 + +NV_geometry_program4 enum: (additional; see below) + PROGRAM_POINT_SIZE_EXT = 0x8642 + +VERSION_3_2 enum: + use ARB_depth_clamp DEPTH_CLAMP + +ARB_depth_clamp enum: + DEPTH_CLAMP = 0x864F + +NV_depth_clamp enum: + DEPTH_CLAMP_NV = 0x864F + +VERSION_2_0 enum: (Promoted from ARB_vertex_shader; only some values) + VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622 # VERSION_2_0 + VERTEX_ATTRIB_ARRAY_SIZE = 0x8623 # VERSION_2_0 + VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624 # VERSION_2_0 + VERTEX_ATTRIB_ARRAY_TYPE = 0x8625 # VERSION_2_0 + CURRENT_VERTEX_ATTRIB = 0x8626 # VERSION_2_0 + VERTEX_PROGRAM_POINT_SIZE = 0x8642 # VERSION_2_0 + VERTEX_PROGRAM_TWO_SIDE = 0x8643 # VERSION_2_0 + VERTEX_ATTRIB_ARRAY_POINTER = 0x8645 # VERSION_2_0 + +ARB_vertex_program enum: (additional; see above; reuses NV_vertex_program values) +ARB_fragment_program enum: (additional; only some values; see below) +# (Unfortunately, PROGRAM_BINDING_ARB does accidentally reuse 0x8677) + VERTEX_PROGRAM_ARB = 0x8620 + VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622 + VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623 + VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624 + VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625 + CURRENT_VERTEX_ATTRIB_ARB = 0x8626 + PROGRAM_LENGTH_ARB = 0x8627 # ARB_fragment_program + PROGRAM_STRING_ARB = 0x8628 # ARB_fragment_program + MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E # ARB_fragment_program + MAX_PROGRAM_MATRICES_ARB = 0x862F # ARB_fragment_program + CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640 # ARB_fragment_program + CURRENT_MATRIX_ARB = 0x8641 # ARB_fragment_program + VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642 + VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643 + VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645 + PROGRAM_ERROR_POSITION_ARB = 0x864B # ARB_fragment_program + PROGRAM_BINDING_ARB = 0x8677 # ARB_fragment_program + +############################################################################### + +# Pixelfusion: 0x8680-0x869F + +############################################################################### + +# OpenGL ARB: 0x86A0-0x86AF + +# ARB_texture_compression/1.3 (additional; see above): 0x86A0-0x86A3 + +ARB_vertex_blend enum: + MAX_VERTEX_UNITS_ARB = 0x86A4 + ACTIVE_VERTEX_UNITS_ARB = 0x86A5 + WEIGHT_SUM_UNITY_ARB = 0x86A6 + VERTEX_BLEND_ARB = 0x86A7 + CURRENT_WEIGHT_ARB = 0x86A8 + WEIGHT_ARRAY_TYPE_ARB = 0x86A9 + WEIGHT_ARRAY_STRIDE_ARB = 0x86AA + WEIGHT_ARRAY_SIZE_ARB = 0x86AB + WEIGHT_ARRAY_POINTER_ARB = 0x86AC + WEIGHT_ARRAY_ARB = 0x86AD +# Note: MODELVIEW0/1 are defined in other extensions, but not as ARB) + MODELVIEW0_ARB = 0x1700 + MODELVIEW1_ARB = 0x850A + MODELVIEW2_ARB = 0x8722 + MODELVIEW3_ARB = 0x8723 + MODELVIEW4_ARB = 0x8724 + MODELVIEW5_ARB = 0x8725 + MODELVIEW6_ARB = 0x8726 + MODELVIEW7_ARB = 0x8727 + MODELVIEW8_ARB = 0x8728 + MODELVIEW9_ARB = 0x8729 + MODELVIEW10_ARB = 0x872A + MODELVIEW11_ARB = 0x872B + MODELVIEW12_ARB = 0x872C + MODELVIEW13_ARB = 0x872D + MODELVIEW14_ARB = 0x872E + MODELVIEW15_ARB = 0x872F + MODELVIEW16_ARB = 0x8730 + MODELVIEW17_ARB = 0x8731 + MODELVIEW18_ARB = 0x8732 + MODELVIEW19_ARB = 0x8733 + MODELVIEW20_ARB = 0x8734 + MODELVIEW21_ARB = 0x8735 + MODELVIEW22_ARB = 0x8736 + MODELVIEW23_ARB = 0x8737 + MODELVIEW24_ARB = 0x8738 + MODELVIEW25_ARB = 0x8739 + MODELVIEW26_ARB = 0x873A + MODELVIEW27_ARB = 0x873B + MODELVIEW28_ARB = 0x873C + MODELVIEW29_ARB = 0x873D + MODELVIEW30_ARB = 0x873E + MODELVIEW31_ARB = 0x873F + +# Aliases ARB_vertex_blend enums above +OES_matrix_palette enum: (OpenGL ES only; additional; see below) + MAX_VERTEX_UNITS_OES = 0x86A4 + WEIGHT_ARRAY_OES = 0x86AD + WEIGHT_ARRAY_TYPE_OES = 0x86A9 + WEIGHT_ARRAY_STRIDE_OES = 0x86AA + WEIGHT_ARRAY_SIZE_OES = 0x86AB + WEIGHT_ARRAY_POINTER_OES = 0x86AC + +VERSION_1_3 enum: (Promoted for OpenGL 1.3) + DOT3_RGB = 0x86AE + DOT3_RGBA = 0x86AF + +ARB_texture_env_dot3 enum: + DOT3_RGB_ARB = 0x86AE + DOT3_RGBA_ARB = 0x86AF + +IMG_texture_env_enhanced_fixed_function enum: (OpenGL ES only; additional; see below) + DOT3_RGBA_IMG = 0x86AF + +############################################################################### + +# 3Dfx: 0x86B0-0x86BF + +3DFX_texture_compression_FXT1 enum: + COMPRESSED_RGB_FXT1_3DFX = 0x86B0 + COMPRESSED_RGBA_FXT1_3DFX = 0x86B1 + +3DFX_multisample enum: + MULTISAMPLE_3DFX = 0x86B2 + SAMPLE_BUFFERS_3DFX = 0x86B3 + SAMPLES_3DFX = 0x86B4 + MULTISAMPLE_BIT_3DFX = 0x20000000 + +# 3DFX_future_use: 0x86B5-0x86BF + +############################################################################### + +# NVIDIA: 0x86C0-0x871F + +NV_evaluators enum: + EVAL_2D_NV = 0x86C0 + EVAL_TRIANGULAR_2D_NV = 0x86C1 + MAP_TESSELLATION_NV = 0x86C2 + MAP_ATTRIB_U_ORDER_NV = 0x86C3 + MAP_ATTRIB_V_ORDER_NV = 0x86C4 + EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5 + EVAL_VERTEX_ATRRIB0_NV = 0x86C6 + EVAL_VERTEX_ATRRIB1_NV = 0x86C7 + EVAL_VERTEX_ATRRIB2_NV = 0x86C8 + EVAL_VERTEX_ATRRIB3_NV = 0x86C9 + EVAL_VERTEX_ATRRIB4_NV = 0x86CA + EVAL_VERTEX_ATRRIB5_NV = 0x86CB + EVAL_VERTEX_ATRRIB6_NV = 0x86CC + EVAL_VERTEX_ATRRIB7_NV = 0x86CD + EVAL_VERTEX_ATRRIB8_NV = 0x86CE + EVAL_VERTEX_ATRRIB9_NV = 0x86CF + EVAL_VERTEX_ATRRIB10_NV = 0x86D0 + EVAL_VERTEX_ATRRIB11_NV = 0x86D1 + EVAL_VERTEX_ATRRIB12_NV = 0x86D2 + EVAL_VERTEX_ATRRIB13_NV = 0x86D3 + EVAL_VERTEX_ATRRIB14_NV = 0x86D4 + EVAL_VERTEX_ATRRIB15_NV = 0x86D5 + MAX_MAP_TESSELLATION_NV = 0x86D6 + MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7 + +# NV_future_use: 0x86D8 + +NV_texture_shader enum: + OFFSET_TEXTURE_RECTANGLE_NV = 0x864C + OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D + DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E + RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9 + UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA + UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB + DSDT_MAG_INTENSITY_NV = 0x86DC + SHADER_CONSISTENT_NV = 0x86DD + TEXTURE_SHADER_NV = 0x86DE + SHADER_OPERATION_NV = 0x86DF + CULL_MODES_NV = 0x86E0 + OFFSET_TEXTURE_MATRIX_NV = 0x86E1 + OFFSET_TEXTURE_SCALE_NV = 0x86E2 + OFFSET_TEXTURE_BIAS_NV = 0x86E3 + OFFSET_TEXTURE_2D_MATRIX_NV = GL_OFFSET_TEXTURE_MATRIX_NV + OFFSET_TEXTURE_2D_SCALE_NV = GL_OFFSET_TEXTURE_SCALE_NV + OFFSET_TEXTURE_2D_BIAS_NV = GL_OFFSET_TEXTURE_BIAS_NV + PREVIOUS_TEXTURE_INPUT_NV = 0x86E4 + CONST_EYE_NV = 0x86E5 + PASS_THROUGH_NV = 0x86E6 + CULL_FRAGMENT_NV = 0x86E7 + OFFSET_TEXTURE_2D_NV = 0x86E8 + DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9 + DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA + DOT_PRODUCT_NV = 0x86EC + DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED + DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE + DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0 + DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1 + DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2 + DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3 + HILO_NV = 0x86F4 + DSDT_NV = 0x86F5 + DSDT_MAG_NV = 0x86F6 + DSDT_MAG_VIB_NV = 0x86F7 + HILO16_NV = 0x86F8 + SIGNED_HILO_NV = 0x86F9 + SIGNED_HILO16_NV = 0x86FA + SIGNED_RGBA_NV = 0x86FB + SIGNED_RGBA8_NV = 0x86FC + SIGNED_RGB_NV = 0x86FE + SIGNED_RGB8_NV = 0x86FF + SIGNED_LUMINANCE_NV = 0x8701 + SIGNED_LUMINANCE8_NV = 0x8702 + SIGNED_LUMINANCE_ALPHA_NV = 0x8703 + SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704 + SIGNED_ALPHA_NV = 0x8705 + SIGNED_ALPHA8_NV = 0x8706 + SIGNED_INTENSITY_NV = 0x8707 + SIGNED_INTENSITY8_NV = 0x8708 + DSDT8_NV = 0x8709 + DSDT8_MAG8_NV = 0x870A + DSDT8_MAG8_INTENSITY8_NV = 0x870B + SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C + SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D + HI_SCALE_NV = 0x870E + LO_SCALE_NV = 0x870F + DS_SCALE_NV = 0x8710 + DT_SCALE_NV = 0x8711 + MAGNITUDE_SCALE_NV = 0x8712 + VIBRANCE_SCALE_NV = 0x8713 + HI_BIAS_NV = 0x8714 + LO_BIAS_NV = 0x8715 + DS_BIAS_NV = 0x8716 + DT_BIAS_NV = 0x8717 + MAGNITUDE_BIAS_NV = 0x8718 + VIBRANCE_BIAS_NV = 0x8719 + TEXTURE_BORDER_VALUES_NV = 0x871A + TEXTURE_HI_SIZE_NV = 0x871B + TEXTURE_LO_SIZE_NV = 0x871C + TEXTURE_DS_SIZE_NV = 0x871D + TEXTURE_DT_SIZE_NV = 0x871E + TEXTURE_MAG_SIZE_NV = 0x871F + +NV_texture_shader2 enum: + DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF + +# NV_future_use: 0x86EB +# NV_future_use: 0x86FD +# NV_future_use: 0x8700 + +############################################################################### + +# OpenGL ARB: 0x8720-0x873F + +# ARB_vertex_blend (additional; see above): 0x8720-0x873F + +############################################################################### + +# ATI: 0x8740-0x874F + +EXT_texture_env_dot3 enum: + DOT3_RGB_EXT = 0x8740 + DOT3_RGBA_EXT = 0x8741 + +# There's a collision between AMD_program_binary_Z400 and EXT_texture_env_dot3! +AMD_program_binary_Z400 enum: (OpenGL ES only) + Z400_BINARY_AMD = 0x8740 + +# There's a collision between OES_get_program_binary and EXT_texture_env_dot3! +OES_get_program_binary enum: (OpenGL ES only; additional; see below) + PROGRAM_BINARY_LENGTH_OES = 0x8741 + +ATI_texture_mirror_once enum: + MIRROR_CLAMP_ATI = 0x8742 + MIRROR_CLAMP_TO_EDGE_ATI = 0x8743 + +EXT_texture_mirror_clamp enum: + MIRROR_CLAMP_EXT = 0x8742 + MIRROR_CLAMP_TO_EDGE_EXT = 0x8743 + +ATI_texture_env_combine3 enum: + MODULATE_ADD_ATI = 0x8744 + MODULATE_SIGNED_ADD_ATI = 0x8745 + MODULATE_SUBTRACT_ATI = 0x8746 + +# ATI_future_use: 0x8747-0x874F + +############################################################################### + +# MESA: 0x8750-0x875F + +MESA_packed_depth_stencil enum: + DEPTH_STENCIL_MESA = 0x8750 + UNSIGNED_INT_24_8_MESA = 0x8751 + UNSIGNED_INT_8_24_REV_MESA = 0x8752 + UNSIGNED_SHORT_15_1_MESA = 0x8753 + UNSIGNED_SHORT_1_15_REV_MESA = 0x8754 + +MESA_trace enum: + TRACE_ALL_BITS_MESA = 0xFFFF + TRACE_OPERATIONS_BIT_MESA = 0x0001 + TRACE_PRIMITIVES_BIT_MESA = 0x0002 + TRACE_ARRAYS_BIT_MESA = 0x0004 + TRACE_TEXTURES_BIT_MESA = 0x0008 + TRACE_PIXELS_BIT_MESA = 0x0010 + TRACE_ERRORS_BIT_MESA = 0x0020 + TRACE_MASK_MESA = 0x8755 + TRACE_NAME_MESA = 0x8756 + +MESA_ycbcr_texture enum: + YCBCR_MESA = 0x8757 + +MESA_pack_invert enum: + PACK_INVERT_MESA = 0x8758 + +MESAX_texture_stack enum: + TEXTURE_1D_STACK_MESAX = 0x8759 + TEXTURE_2D_STACK_MESAX = 0x875A + PROXY_TEXTURE_1D_STACK_MESAX = 0x875B + PROXY_TEXTURE_2D_STACK_MESAX = 0x875C + TEXTURE_1D_STACK_BINDING_MESAX = 0x875D + TEXTURE_2D_STACK_BINDING_MESAX = 0x875E + +MESA_shader_debug enum: + DEBUG_OBJECT_MESA = 0x8759 + DEBUG_PRINT_MESA = 0x875A + DEBUG_ASSERT_MESA = 0x875B + +# MESA_future_use: 0x875F + +############################################################################### + +# ATI: 0x8760-0x883F + +ATI_vertex_array_object enum: + STATIC_ATI = 0x8760 + DYNAMIC_ATI = 0x8761 + PRESERVE_ATI = 0x8762 + DISCARD_ATI = 0x8763 + OBJECT_BUFFER_SIZE_ATI = 0x8764 + OBJECT_BUFFER_USAGE_ATI = 0x8765 + ARRAY_OBJECT_BUFFER_ATI = 0x8766 + ARRAY_OBJECT_OFFSET_ATI = 0x8767 + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + BUFFER_SIZE = 0x8764 + BUFFER_USAGE = 0x8765 + +ARB_vertex_buffer_object enum: (additional; aliases some ATI enums; see below) + BUFFER_SIZE_ARB = 0x8764 + BUFFER_USAGE_ARB = 0x8765 + +ATI_element_array enum: + ELEMENT_ARRAY_ATI = 0x8768 + ELEMENT_ARRAY_TYPE_ATI = 0x8769 + ELEMENT_ARRAY_POINTER_ATI = 0x876A + +# @@@ (extends ATI_element_array, I think???) +APPLE_element_array enum: + ELEMENT_ARRAY_APPLE = 0x8768 + ELEMENT_ARRAY_TYPE_APPLE = 0x8769 + ELEMENT_ARRAY_POINTER_APPLE = 0x876A + +ATI_vertex_streams enum: + MAX_VERTEX_STREAMS_ATI = 0x876B + VERTEX_STREAM0_ATI = 0x876C + VERTEX_STREAM1_ATI = 0x876D + VERTEX_STREAM2_ATI = 0x876E + VERTEX_STREAM3_ATI = 0x876F + VERTEX_STREAM4_ATI = 0x8770 + VERTEX_STREAM5_ATI = 0x8771 + VERTEX_STREAM6_ATI = 0x8772 + VERTEX_STREAM7_ATI = 0x8773 + VERTEX_SOURCE_ATI = 0x8774 + +ATI_envmap_bumpmap enum: + BUMP_ROT_MATRIX_ATI = 0x8775 + BUMP_ROT_MATRIX_SIZE_ATI = 0x8776 + BUMP_NUM_TEX_UNITS_ATI = 0x8777 + BUMP_TEX_UNITS_ATI = 0x8778 + DUDV_ATI = 0x8779 + DU8DV8_ATI = 0x877A + BUMP_ENVMAP_ATI = 0x877B + BUMP_TARGET_ATI = 0x877C + +# ATI_future_use: 0x877D-0x877F + +EXT_vertex_shader enum: + VERTEX_SHADER_EXT = 0x8780 + VERTEX_SHADER_BINDING_EXT = 0x8781 + OP_INDEX_EXT = 0x8782 + OP_NEGATE_EXT = 0x8783 + OP_DOT3_EXT = 0x8784 + OP_DOT4_EXT = 0x8785 + OP_MUL_EXT = 0x8786 + OP_ADD_EXT = 0x8787 + OP_MADD_EXT = 0x8788 + OP_FRAC_EXT = 0x8789 + OP_MAX_EXT = 0x878A + OP_MIN_EXT = 0x878B + OP_SET_GE_EXT = 0x878C + OP_SET_LT_EXT = 0x878D + OP_CLAMP_EXT = 0x878E + OP_FLOOR_EXT = 0x878F + OP_ROUND_EXT = 0x8790 + OP_EXP_BASE_2_EXT = 0x8791 + OP_LOG_BASE_2_EXT = 0x8792 + OP_POWER_EXT = 0x8793 + OP_RECIP_EXT = 0x8794 + OP_RECIP_SQRT_EXT = 0x8795 + OP_SUB_EXT = 0x8796 + OP_CROSS_PRODUCT_EXT = 0x8797 + OP_MULTIPLY_MATRIX_EXT = 0x8798 + OP_MOV_EXT = 0x8799 + OUTPUT_VERTEX_EXT = 0x879A + OUTPUT_COLOR0_EXT = 0x879B + OUTPUT_COLOR1_EXT = 0x879C + OUTPUT_TEXTURE_COORD0_EXT = 0x879D + OUTPUT_TEXTURE_COORD1_EXT = 0x879E + OUTPUT_TEXTURE_COORD2_EXT = 0x879F + OUTPUT_TEXTURE_COORD3_EXT = 0x87A0 + OUTPUT_TEXTURE_COORD4_EXT = 0x87A1 + OUTPUT_TEXTURE_COORD5_EXT = 0x87A2 + OUTPUT_TEXTURE_COORD6_EXT = 0x87A3 + OUTPUT_TEXTURE_COORD7_EXT = 0x87A4 + OUTPUT_TEXTURE_COORD8_EXT = 0x87A5 + OUTPUT_TEXTURE_COORD9_EXT = 0x87A6 + OUTPUT_TEXTURE_COORD10_EXT = 0x87A7 + OUTPUT_TEXTURE_COORD11_EXT = 0x87A8 + OUTPUT_TEXTURE_COORD12_EXT = 0x87A9 + OUTPUT_TEXTURE_COORD13_EXT = 0x87AA + OUTPUT_TEXTURE_COORD14_EXT = 0x87AB + OUTPUT_TEXTURE_COORD15_EXT = 0x87AC + OUTPUT_TEXTURE_COORD16_EXT = 0x87AD + OUTPUT_TEXTURE_COORD17_EXT = 0x87AE + OUTPUT_TEXTURE_COORD18_EXT = 0x87AF + OUTPUT_TEXTURE_COORD19_EXT = 0x87B0 + OUTPUT_TEXTURE_COORD20_EXT = 0x87B1 + OUTPUT_TEXTURE_COORD21_EXT = 0x87B2 + OUTPUT_TEXTURE_COORD22_EXT = 0x87B3 + OUTPUT_TEXTURE_COORD23_EXT = 0x87B4 + OUTPUT_TEXTURE_COORD24_EXT = 0x87B5 + OUTPUT_TEXTURE_COORD25_EXT = 0x87B6 + OUTPUT_TEXTURE_COORD26_EXT = 0x87B7 + OUTPUT_TEXTURE_COORD27_EXT = 0x87B8 + OUTPUT_TEXTURE_COORD28_EXT = 0x87B9 + OUTPUT_TEXTURE_COORD29_EXT = 0x87BA + OUTPUT_TEXTURE_COORD30_EXT = 0x87BB + OUTPUT_TEXTURE_COORD31_EXT = 0x87BC + OUTPUT_FOG_EXT = 0x87BD + SCALAR_EXT = 0x87BE + VECTOR_EXT = 0x87BF + MATRIX_EXT = 0x87C0 + VARIANT_EXT = 0x87C1 + INVARIANT_EXT = 0x87C2 + LOCAL_CONSTANT_EXT = 0x87C3 + LOCAL_EXT = 0x87C4 + MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5 + MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6 + MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7 + MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8 + MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9 + MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA + MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB + MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC + MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD + MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE + VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF + VERTEX_SHADER_VARIANTS_EXT = 0x87D0 + VERTEX_SHADER_INVARIANTS_EXT = 0x87D1 + VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2 + VERTEX_SHADER_LOCALS_EXT = 0x87D3 + VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4 + X_EXT = 0x87D5 + Y_EXT = 0x87D6 + Z_EXT = 0x87D7 + W_EXT = 0x87D8 + NEGATIVE_X_EXT = 0x87D9 + NEGATIVE_Y_EXT = 0x87DA + NEGATIVE_Z_EXT = 0x87DB + NEGATIVE_W_EXT = 0x87DC + ZERO_EXT = 0x87DD + ONE_EXT = 0x87DE + NEGATIVE_ONE_EXT = 0x87DF + NORMALIZED_RANGE_EXT = 0x87E0 + FULL_RANGE_EXT = 0x87E1 + CURRENT_VERTEX_EXT = 0x87E2 + MVP_MATRIX_EXT = 0x87E3 + VARIANT_VALUE_EXT = 0x87E4 + VARIANT_DATATYPE_EXT = 0x87E5 + VARIANT_ARRAY_STRIDE_EXT = 0x87E6 + VARIANT_ARRAY_TYPE_EXT = 0x87E7 + VARIANT_ARRAY_EXT = 0x87E8 + VARIANT_ARRAY_POINTER_EXT = 0x87E9 + INVARIANT_VALUE_EXT = 0x87EA + INVARIANT_DATATYPE_EXT = 0x87EB + LOCAL_CONSTANT_VALUE_EXT = 0x87EC + LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED + +AMD_compressed_ATC_texture enum: (OpenGL ES only) (additional; see below) + ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE + +ATI_pn_triangles enum: + PN_TRIANGLES_ATI = 0x87F0 + MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1 + PN_TRIANGLES_POINT_MODE_ATI = 0x87F2 + PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3 + PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4 + PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5 + PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6 + PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7 + PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8 + +AMD_compressed_3DC_texture enum: (OpenGL ES only) + 3DC_X_AMD = 0x87F9 + 3DC_XY_AMD = 0x87FA + +ATI_meminfo enum: + VBO_FREE_MEMORY_ATI = 0x87FB + TEXTURE_FREE_MEMORY_ATI = 0x87FC + RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD + +OES_get_program_binary enum: (OpenGL ES only; + NUM_PROGRAM_BINARY_FORMATS_OES = 0x87FE + PROGRAM_BINARY_FORMATS_OES = 0x87FF + +VERSION_2_0 enum: (Promoted for OpenGL 2.0) + STENCIL_BACK_FUNC = 0x8800 # VERSION_2_0 + STENCIL_BACK_FAIL = 0x8801 # VERSION_2_0 + STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802 # VERSION_2_0 + STENCIL_BACK_PASS_DEPTH_PASS = 0x8803 # VERSION_2_0 + STENCIL_BACK_FAIL_ATI = 0x8801 + +ATI_separate_stencil enum: + STENCIL_BACK_FUNC_ATI = 0x8800 + STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802 + STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803 + +ARB_fragment_program enum: + FRAGMENT_PROGRAM_ARB = 0x8804 + PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805 + PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806 + PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807 + PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808 + PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809 + PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A + MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B + MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C + MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D + MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E + MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F + MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810 + +# ATI_future_use: 0x8811-0x8813 + +VERSION_3_0 enum: + RGBA32F = 0x8814 # VERSION_3_0 + RGB32F = 0x8815 # VERSION_3_0 + RGBA16F = 0x881A # VERSION_3_0 + RGB16F = 0x881B # VERSION_3_0 + +ARB_texture_float enum: + RGBA32F_ARB = 0x8814 + RGB32F_ARB = 0x8815 + ALPHA32F_ARB = 0x8816 + INTENSITY32F_ARB = 0x8817 + LUMINANCE32F_ARB = 0x8818 + LUMINANCE_ALPHA32F_ARB = 0x8819 + RGBA16F_ARB = 0x881A + RGB16F_ARB = 0x881B + ALPHA16F_ARB = 0x881C + INTENSITY16F_ARB = 0x881D + LUMINANCE16F_ARB = 0x881E + LUMINANCE_ALPHA16F_ARB = 0x881F + +ATI_texture_float enum: + RGBA_FLOAT32_ATI = 0x8814 + RGB_FLOAT32_ATI = 0x8815 + ALPHA_FLOAT32_ATI = 0x8816 + INTENSITY_FLOAT32_ATI = 0x8817 + LUMINANCE_FLOAT32_ATI = 0x8818 + LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819 + RGBA_FLOAT16_ATI = 0x881A + RGB_FLOAT16_ATI = 0x881B + ALPHA_FLOAT16_ATI = 0x881C + INTENSITY_FLOAT16_ATI = 0x881D + LUMINANCE_FLOAT16_ATI = 0x881E + LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F + +APPLE_float_pixels enum: (additional; see below) + RGBA_FLOAT32_APPLE = 0x8814 + RGB_FLOAT32_APPLE = 0x8815 + ALPHA_FLOAT32_APPLE = 0x8816 + INTENSITY_FLOAT32_APPLE = 0x8817 + LUMINANCE_FLOAT32_APPLE = 0x8818 + LUMINANCE_ALPHA_FLOAT32_APPLE = 0x8819 + RGBA_FLOAT16_APPLE = 0x881A + RGB_FLOAT16_APPLE = 0x881B + ALPHA_FLOAT16_APPLE = 0x881C + INTENSITY_FLOAT16_APPLE = 0x881D + LUMINANCE_FLOAT16_APPLE = 0x881E + LUMINANCE_ALPHA_FLOAT16_APPLE = 0x881F + +ARB_color_buffer_float enum: + RGBA_FLOAT_MODE_ARB = 0x8820 # Equivalent to TYPE_RGBA_FLOAT_ATI + +ATI_pixel_format_float enum: (really WGL_ATI_pixel_format_float) + TYPE_RGBA_FLOAT_ATI = 0x8820 + +# ATI_future_use: 0x8821-0x8822 + +QCOM_writeonly_rendering enum: (OpenGL ES only) + WRITEONLY_RENDERING_AMD = 0x8823 + +VERSION_2_0 enum: (Promoted for OpenGL 2.0) + MAX_DRAW_BUFFERS = 0x8824 # VERSION_2_0 + DRAW_BUFFER0 = 0x8825 # VERSION_2_0 + DRAW_BUFFER1 = 0x8826 # VERSION_2_0 + DRAW_BUFFER2 = 0x8827 # VERSION_2_0 + DRAW_BUFFER3 = 0x8828 # VERSION_2_0 + DRAW_BUFFER4 = 0x8829 # VERSION_2_0 + DRAW_BUFFER5 = 0x882A # VERSION_2_0 + DRAW_BUFFER6 = 0x882B # VERSION_2_0 + DRAW_BUFFER7 = 0x882C # VERSION_2_0 + DRAW_BUFFER8 = 0x882D # VERSION_2_0 + DRAW_BUFFER9 = 0x882E # VERSION_2_0 + DRAW_BUFFER10 = 0x882F # VERSION_2_0 + DRAW_BUFFER11 = 0x8830 # VERSION_2_0 + DRAW_BUFFER12 = 0x8831 # VERSION_2_0 + DRAW_BUFFER13 = 0x8832 # VERSION_2_0 + DRAW_BUFFER14 = 0x8833 # VERSION_2_0 + DRAW_BUFFER15 = 0x8834 # VERSION_2_0 + +ARB_draw_buffers enum: + MAX_DRAW_BUFFERS_ARB = 0x8824 + DRAW_BUFFER0_ARB = 0x8825 + DRAW_BUFFER1_ARB = 0x8826 + DRAW_BUFFER2_ARB = 0x8827 + DRAW_BUFFER3_ARB = 0x8828 + DRAW_BUFFER4_ARB = 0x8829 + DRAW_BUFFER5_ARB = 0x882A + DRAW_BUFFER6_ARB = 0x882B + DRAW_BUFFER7_ARB = 0x882C + DRAW_BUFFER8_ARB = 0x882D + DRAW_BUFFER9_ARB = 0x882E + DRAW_BUFFER10_ARB = 0x882F + DRAW_BUFFER11_ARB = 0x8830 + DRAW_BUFFER12_ARB = 0x8831 + DRAW_BUFFER13_ARB = 0x8832 + DRAW_BUFFER14_ARB = 0x8833 + DRAW_BUFFER15_ARB = 0x8834 + +ATI_draw_buffers enum: + MAX_DRAW_BUFFERS_ATI = 0x8824 + DRAW_BUFFER0_ATI = 0x8825 + DRAW_BUFFER1_ATI = 0x8826 + DRAW_BUFFER2_ATI = 0x8827 + DRAW_BUFFER3_ATI = 0x8828 + DRAW_BUFFER4_ATI = 0x8829 + DRAW_BUFFER5_ATI = 0x882A + DRAW_BUFFER6_ATI = 0x882B + DRAW_BUFFER7_ATI = 0x882C + DRAW_BUFFER8_ATI = 0x882D + DRAW_BUFFER9_ATI = 0x882E + DRAW_BUFFER10_ATI = 0x882F + DRAW_BUFFER11_ATI = 0x8830 + DRAW_BUFFER12_ATI = 0x8831 + DRAW_BUFFER13_ATI = 0x8832 + DRAW_BUFFER14_ATI = 0x8833 + DRAW_BUFFER15_ATI = 0x8834 + +ATI_pixel_format_float enum: (really WGL_ATI_pixel_format_float) (additional; see above) + COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835 + +# ATI_future_use: 0x8836-0x883F + +VERSION_2_0 enum: (Promoted for OpenGL 2.0) + BLEND_EQUATION_ALPHA = 0x883D # VERSION_2_0 + +EXT_blend_equation_separate enum: + BLEND_EQUATION_ALPHA_EXT = 0x883D + +# Aliases EXT_blend_equation_separate enum above +OES_blend_equation_separate enum: (OpenGL ES only) + BLEND_EQUATION_ALPHA_OES = 0x883D + +############################################################################### + +# OpenGL ARB: 0x8840-0x884F + +ARB_matrix_palette enum: + MATRIX_PALETTE_ARB = 0x8840 + MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841 + MAX_PALETTE_MATRICES_ARB = 0x8842 + CURRENT_PALETTE_MATRIX_ARB = 0x8843 + MATRIX_INDEX_ARRAY_ARB = 0x8844 + CURRENT_MATRIX_INDEX_ARB = 0x8845 + MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846 + MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847 + MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848 + MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849 + +# Aliases ARB_matrix_palette enums above +OES_matrix_palette enum: (OpenGL ES only; additional; see below) + MATRIX_PALETTE_OES = 0x8840 + MAX_PALETTE_MATRICES_OES = 0x8842 + CURRENT_PALETTE_MATRIX_OES = 0x8843 + MATRIX_INDEX_ARRAY_OES = 0x8844 + MATRIX_INDEX_ARRAY_SIZE_OES = 0x8846 + MATRIX_INDEX_ARRAY_TYPE_OES = 0x8847 + MATRIX_INDEX_ARRAY_STRIDE_OES = 0x8848 + MATRIX_INDEX_ARRAY_POINTER_OES = 0x8849 + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + TEXTURE_DEPTH_SIZE = 0x884A + DEPTH_TEXTURE_MODE = 0x884B + +ARB_depth_texture enum: + TEXTURE_DEPTH_SIZE_ARB = 0x884A + DEPTH_TEXTURE_MODE_ARB = 0x884B + +VERSION_3_0 enum: (aliases) + COMPARE_REF_TO_TEXTURE = 0x884E # VERSION_3_0 # alias GL_COMPARE_R_TO_TEXTURE_ARB + +VERSION_1_4 enum: (Promoted for OpenGL 1.4) + TEXTURE_COMPARE_MODE = 0x884C + TEXTURE_COMPARE_FUNC = 0x884D + COMPARE_R_TO_TEXTURE = 0x884E + +ARB_shadow enum: + TEXTURE_COMPARE_MODE_ARB = 0x884C + TEXTURE_COMPARE_FUNC_ARB = 0x884D + COMPARE_R_TO_TEXTURE_ARB = 0x884E + +EXT_texture_array enum: (additional; see below) + COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E + +VERSION_3_2 enum: + use ARB_seamless_cube_map TEXTURE_CUBE_MAP_SEAMLESS + +ARB_seamless_cube_map enum: + TEXTURE_CUBE_MAP_SEAMLESS = 0x884F + +############################################################################### + +# NVIDIA: 0x8850-0x891F + +NV_texture_shader3 enum: + OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850 + OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851 + OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852 + OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853 + OFFSET_HILO_TEXTURE_2D_NV = 0x8854 + OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855 + OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856 + OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857 + DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858 + DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859 + DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A + DOT_PRODUCT_PASS_THROUGH_NV = 0x885B + DOT_PRODUCT_TEXTURE_1D_NV = 0x885C + DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D + HILO8_NV = 0x885E + SIGNED_HILO8_NV = 0x885F + FORCE_BLUE_TO_ONE_NV = 0x8860 + +VERSION_2_0 enum: (Promoted for OpenGL 2.0) + POINT_SPRITE = 0x8861 # VERSION_2_0 + COORD_REPLACE = 0x8862 # VERSION_2_0 + +ARB_point_sprite enum: + POINT_SPRITE_ARB = 0x8861 + COORD_REPLACE_ARB = 0x8862 + +NV_point_sprite enum: + POINT_SPRITE_NV = 0x8861 + COORD_REPLACE_NV = 0x8862 + +# Aliases ARB_point_sprite enums above +OES_point_sprite enum: (OpenGL ES only) + POINT_SPRITE_ARB = 0x8861 + COORD_REPLACE_ARB = 0x8862 + +NV_point_sprite enum: + POINT_SPRITE_R_MODE_NV = 0x8863 + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + QUERY_COUNTER_BITS = 0x8864 + CURRENT_QUERY = 0x8865 + QUERY_RESULT = 0x8866 + QUERY_RESULT_AVAILABLE = 0x8867 + +ARB_occlusion_query enum: + QUERY_COUNTER_BITS_ARB = 0x8864 + CURRENT_QUERY_ARB = 0x8865 + QUERY_RESULT_ARB = 0x8866 + QUERY_RESULT_AVAILABLE_ARB = 0x8867 + +NV_occlusion_query enum: + PIXEL_COUNTER_BITS_NV = 0x8864 + CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865 + PIXEL_COUNT_NV = 0x8866 + PIXEL_COUNT_AVAILABLE_NV = 0x8867 + +NV_fragment_program enum: + MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868 + +VERSION_2_0 enum: (Promoted from ARB_vertex_shader) + MAX_VERTEX_ATTRIBS = 0x8869 # VERSION_2_0 + VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A # VERSION_2_0 + +ARB_vertex_program enum: (additional; see above) + MAX_VERTEX_ATTRIBS_ARB = 0x8869 + VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A + +# NV_future_use: 0x886B-0x886D + +NV_copy_depth_to_color enum: + DEPTH_STENCIL_TO_RGBA_NV = 0x886E + DEPTH_STENCIL_TO_BGRA_NV = 0x886F + +NV_fragment_program enum: (additional; see above) + FRAGMENT_PROGRAM_NV = 0x8870 + MAX_TEXTURE_COORDS_NV = 0x8871 + MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872 + FRAGMENT_PROGRAM_BINDING_NV = 0x8873 + PROGRAM_ERROR_STRING_NV = 0x8874 + +VERSION_2_0 enum: (Promoted from ARB_fragment_shader; only some values) + MAX_TEXTURE_COORDS = 0x8871 # VERSION_2_0 + MAX_TEXTURE_IMAGE_UNITS = 0x8872 # VERSION_2_0 + +ARB_vertex_program enum: (additional; see above) +ARB_fragment_program enum: (additional; see above) + MAX_TEXTURE_COORDS_ARB = 0x8871 # ARB_fragment_program + MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872 # ARB_fragment_program + PROGRAM_ERROR_STRING_ARB = 0x8874 # ARB_vertex_program / ARB_fragment_program + PROGRAM_FORMAT_ASCII_ARB = 0x8875 # ARB_vertex_program / ARB_fragment_program + PROGRAM_FORMAT_ARB = 0x8876 # ARB_vertex_program / ARB_fragment_program + +# 0x8877 *should have been* assigned to PROGRAM_BINDING_ARB. Oops. + +NV_pixel_data_range enum: + WRITE_PIXEL_DATA_RANGE_NV = 0x8878 + READ_PIXEL_DATA_RANGE_NV = 0x8879 + WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A + READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B + WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C + READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D + +# NV_future_use: 0x887E-0x887F + +NV_float_buffer enum: + FLOAT_R_NV = 0x8880 + FLOAT_RG_NV = 0x8881 + FLOAT_RGB_NV = 0x8882 + FLOAT_RGBA_NV = 0x8883 + FLOAT_R16_NV = 0x8884 + FLOAT_R32_NV = 0x8885 + FLOAT_RG16_NV = 0x8886 + FLOAT_RG32_NV = 0x8887 + FLOAT_RGB16_NV = 0x8888 + FLOAT_RGB32_NV = 0x8889 + FLOAT_RGBA16_NV = 0x888A + FLOAT_RGBA32_NV = 0x888B + TEXTURE_FLOAT_COMPONENTS_NV = 0x888C + FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D + FLOAT_RGBA_MODE_NV = 0x888E + +NV_texture_expand_normal enum: + TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F + +EXT_depth_bounds_test enum: + DEPTH_BOUNDS_TEST_EXT = 0x8890 + DEPTH_BOUNDS_EXT = 0x8891 + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + ARRAY_BUFFER = 0x8892 + ELEMENT_ARRAY_BUFFER = 0x8893 + ARRAY_BUFFER_BINDING = 0x8894 + ELEMENT_ARRAY_BUFFER_BINDING = 0x8895 + VERTEX_ARRAY_BUFFER_BINDING = 0x8896 + NORMAL_ARRAY_BUFFER_BINDING = 0x8897 + COLOR_ARRAY_BUFFER_BINDING = 0x8898 + INDEX_ARRAY_BUFFER_BINDING = 0x8899 + TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A + EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B + SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C + FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D # alias GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING + FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D + WEIGHT_ARRAY_BUFFER_BINDING = 0x889E + VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F + +ARB_vertex_buffer_object enum: + ARRAY_BUFFER_ARB = 0x8892 + ELEMENT_ARRAY_BUFFER_ARB = 0x8893 + ARRAY_BUFFER_BINDING_ARB = 0x8894 + ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895 + VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896 + NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897 + COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898 + INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899 + TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A + EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B + SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C + FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D + WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E + VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F + +# Aliases ARB_vertex_buffer_object enum above +OES_matrix_palette enum: (OpenGL ES only; additional; see below) + WEIGHT_ARRAY_BUFFER_BINDING_OES = 0x889E + +ARB_vertex_program enum: (additional; see above) +ARB_fragment_program enum: (additional; see above) + PROGRAM_INSTRUCTIONS_ARB = 0x88A0 + MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1 + PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2 + MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3 + PROGRAM_TEMPORARIES_ARB = 0x88A4 + MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5 + PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6 + MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7 + PROGRAM_PARAMETERS_ARB = 0x88A8 + MAX_PROGRAM_PARAMETERS_ARB = 0x88A9 + PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA + MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB + PROGRAM_ATTRIBS_ARB = 0x88AC + MAX_PROGRAM_ATTRIBS_ARB = 0x88AD + PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE + MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF + PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0 + MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1 + PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2 + MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3 + MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4 + MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5 + PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6 + TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7 + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + READ_ONLY = 0x88B8 + WRITE_ONLY = 0x88B9 + READ_WRITE = 0x88BA + BUFFER_ACCESS = 0x88BB + BUFFER_MAPPED = 0x88BC + BUFFER_MAP_POINTER = 0x88BD + +ARB_vertex_buffer_object enum: (additional; see above) + READ_ONLY_ARB = 0x88B8 + WRITE_ONLY_ARB = 0x88B9 + READ_WRITE_ARB = 0x88BA + BUFFER_ACCESS_ARB = 0x88BB + BUFFER_MAPPED_ARB = 0x88BC + BUFFER_MAP_POINTER_ARB = 0x88BD + +# Aliases ARB_vertex_buffer_object enums above +OES_mapbuffer enum: (OpenGL ES only) + WRITE_ONLY_OES = 0x88B9 + BUFFER_ACCESS_OES = 0x88BB + BUFFER_MAPPED_OES = 0x88BC + BUFFER_MAP_POINTER_OES = 0x88BD + +# NV_future_use: 0x88BE + +EXT_timer_query enum: + TIME_ELAPSED_EXT = 0x88BF + +ARB_vertex_program enum: (additional; see above) +ARB_fragment_program enum: (additional; see above) + MATRIX0_ARB = 0x88C0 + MATRIX1_ARB = 0x88C1 + MATRIX2_ARB = 0x88C2 + MATRIX3_ARB = 0x88C3 + MATRIX4_ARB = 0x88C4 + MATRIX5_ARB = 0x88C5 + MATRIX6_ARB = 0x88C6 + MATRIX7_ARB = 0x88C7 + MATRIX8_ARB = 0x88C8 + MATRIX9_ARB = 0x88C9 + MATRIX10_ARB = 0x88CA + MATRIX11_ARB = 0x88CB + MATRIX12_ARB = 0x88CC + MATRIX13_ARB = 0x88CD + MATRIX14_ARB = 0x88CE + MATRIX15_ARB = 0x88CF + MATRIX16_ARB = 0x88D0 + MATRIX17_ARB = 0x88D1 + MATRIX18_ARB = 0x88D2 + MATRIX19_ARB = 0x88D3 + MATRIX20_ARB = 0x88D4 + MATRIX21_ARB = 0x88D5 + MATRIX22_ARB = 0x88D6 + MATRIX23_ARB = 0x88D7 + MATRIX24_ARB = 0x88D8 + MATRIX25_ARB = 0x88D9 + MATRIX26_ARB = 0x88DA + MATRIX27_ARB = 0x88DB + MATRIX28_ARB = 0x88DC + MATRIX29_ARB = 0x88DD + MATRIX30_ARB = 0x88DE + MATRIX31_ARB = 0x88DF + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + STREAM_DRAW = 0x88E0 + STREAM_READ = 0x88E1 + STREAM_COPY = 0x88E2 + STATIC_DRAW = 0x88E4 + STATIC_READ = 0x88E5 + STATIC_COPY = 0x88E6 + DYNAMIC_DRAW = 0x88E8 + DYNAMIC_READ = 0x88E9 + DYNAMIC_COPY = 0x88EA + +ARB_vertex_buffer_object enum: (additional; see above) + STREAM_DRAW_ARB = 0x88E0 + STREAM_READ_ARB = 0x88E1 + STREAM_COPY_ARB = 0x88E2 + STATIC_DRAW_ARB = 0x88E4 + STATIC_READ_ARB = 0x88E5 + STATIC_COPY_ARB = 0x88E6 + DYNAMIC_DRAW_ARB = 0x88E8 + DYNAMIC_READ_ARB = 0x88E9 + DYNAMIC_COPY_ARB = 0x88EA + +VERSION_2_1 enum: + PIXEL_PACK_BUFFER = 0x88EB # VERSION_2_1 + PIXEL_UNPACK_BUFFER = 0x88EC # VERSION_2_1 + PIXEL_PACK_BUFFER_BINDING = 0x88ED # VERSION_2_1 + PIXEL_UNPACK_BUFFER_BINDING = 0x88EF # VERSION_2_1 + +ARB_pixel_buffer_object enum: + PIXEL_PACK_BUFFER_ARB = 0x88EB # ARB_pixel_buffer_object + PIXEL_UNPACK_BUFFER_ARB = 0x88EC # ARB_pixel_buffer_object + PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ED # ARB_pixel_buffer_object + PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88EF # ARB_pixel_buffer_object + +EXT_pixel_buffer_object enum: + PIXEL_PACK_BUFFER_EXT = 0x88EB # EXT_pixel_buffer_object + PIXEL_UNPACK_BUFFER_EXT = 0x88EC # EXT_pixel_buffer_object + PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED # EXT_pixel_buffer_object + PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF # EXT_pixel_buffer_object + +# ARB_future_use: 0x88E3, 0x88E7, 0x88EE +# (for extending ARB_vertex_buffer_object): + +VERSION_3_0 enum: + use ARB_framebuffer_object DEPTH24_STENCIL8 + use ARB_framebuffer_object TEXTURE_STENCIL_SIZE + +ARB_framebuffer_object enum: (note: no ARB suffixes) + DEPTH24_STENCIL8 = 0x88F0 # VERSION_3_0 / ARB_fbo + TEXTURE_STENCIL_SIZE = 0x88F1 # VERSION_3_0 / ARB_fbo + +EXT_packed_depth_stencil enum: (additional; see above) + DEPTH24_STENCIL8_EXT = 0x88F0 + TEXTURE_STENCIL_SIZE_EXT = 0x88F1 + +# Aliases EXT_packed_depth_stencil enum above +OES_packed_depth_stencil enum: (OpenGL ES only; additional; see above) + DEPTH24_STENCIL8_OES = 0x88F0 + +EXT_stencil_clear_tag enum: + STENCIL_TAG_BITS_EXT = 0x88F2 + STENCIL_CLEAR_TAG_VALUE_EXT = 0x88F3 + +NV_vertex_program2_option enum: (duplicated in NV_fragment_prgoram2 below) + MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4 + MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5 + +NV_fragment_program2 enum: + MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4 + MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5 + MAX_PROGRAM_IF_DEPTH_NV = 0x88F6 + MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7 + MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8 + +# NV_future_use: 0x88F9-0x88FC + +VERSION_3_0 enum: + VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD # VERSION_3_0 + +NV_vertex_program4 enum: + VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD + +ARB_instanced_arrays enum: + VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = 0x88FE + +VERSION_3_0 enum: + MAX_ARRAY_TEXTURE_LAYERS = 0x88FF # VERSION_3_0 + +EXT_texture_array enum: (additional; see below) + MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF + +VERSION_3_0 enum: + MIN_PROGRAM_TEXEL_OFFSET = 0x8904 # VERSION_3_0 + MAX_PROGRAM_TEXEL_OFFSET = 0x8905 # VERSION_3_0 + +NV_gpu_program4 enum: + MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904 + MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905 + PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906 + PROGRAM_RESULT_COMPONENTS_NV = 0x8907 + MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908 + MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909 + +EXT_stencil_two_side enum: + STENCIL_TEST_TWO_SIDE_EXT = 0x8910 + ACTIVE_STENCIL_FACE_EXT = 0x8911 + +EXT_texture_mirror_clamp enum: (additional; see above): + MIRROR_CLAMP_TO_BORDER_EXT = 0x8912 + +# NV_future_use: 0x8913 + +VERSION_1_5 enum: (Promoted for OpenGL 1.5) + SAMPLES_PASSED = 0x8914 + +ARB_occlusion_query enum: (additional; see above) + SAMPLES_PASSED_ARB = 0x8914 + +# NV_future_use: 0x8915 + +VERSION_3_2 enum: + GEOMETRY_VERTICES_OUT = 0x8916 + GEOMETRY_INPUT_TYPE = 0x8917 + GEOMETRY_OUTPUT_TYPE = 0x8918 + +# NV_future_use: 0x8919 + +VERSION_3_0 enum: + CLAMP_VERTEX_COLOR = 0x891A # VERSION_3_0 + CLAMP_FRAGMENT_COLOR = 0x891B # VERSION_3_0 + CLAMP_READ_COLOR = 0x891C # VERSION_3_0 + FIXED_ONLY = 0x891D # VERSION_3_0 + +ARB_color_buffer_float enum: (additional; see above) + CLAMP_VERTEX_COLOR_ARB = 0x891A + CLAMP_FRAGMENT_COLOR_ARB = 0x891B + CLAMP_READ_COLOR_ARB = 0x891C + FIXED_ONLY_ARB = 0x891D + +# NV_future_use: 0x891E-0x891F + +############################################################################### + +# ATI: 0x8920-0x897F + +ATI_fragment_shader enum: + FRAGMENT_SHADER_ATI = 0x8920 + REG_0_ATI = 0x8921 + REG_1_ATI = 0x8922 + REG_2_ATI = 0x8923 + REG_3_ATI = 0x8924 + REG_4_ATI = 0x8925 + REG_5_ATI = 0x8926 + REG_6_ATI = 0x8927 + REG_7_ATI = 0x8928 + REG_8_ATI = 0x8929 + REG_9_ATI = 0x892A + REG_10_ATI = 0x892B + REG_11_ATI = 0x892C + REG_12_ATI = 0x892D + REG_13_ATI = 0x892E + REG_14_ATI = 0x892F + REG_15_ATI = 0x8930 + REG_16_ATI = 0x8931 + REG_17_ATI = 0x8932 + REG_18_ATI = 0x8933 + REG_19_ATI = 0x8934 + REG_20_ATI = 0x8935 + REG_21_ATI = 0x8936 + REG_22_ATI = 0x8937 + REG_23_ATI = 0x8938 + REG_24_ATI = 0x8939 + REG_25_ATI = 0x893A + REG_26_ATI = 0x893B + REG_27_ATI = 0x893C + REG_28_ATI = 0x893D + REG_29_ATI = 0x893E + REG_30_ATI = 0x893F + REG_31_ATI = 0x8940 + CON_0_ATI = 0x8941 + CON_1_ATI = 0x8942 + CON_2_ATI = 0x8943 + CON_3_ATI = 0x8944 + CON_4_ATI = 0x8945 + CON_5_ATI = 0x8946 + CON_6_ATI = 0x8947 + CON_7_ATI = 0x8948 + CON_8_ATI = 0x8949 + CON_9_ATI = 0x894A + CON_10_ATI = 0x894B + CON_11_ATI = 0x894C + CON_12_ATI = 0x894D + CON_13_ATI = 0x894E + CON_14_ATI = 0x894F + CON_15_ATI = 0x8950 + CON_16_ATI = 0x8951 + CON_17_ATI = 0x8952 + CON_18_ATI = 0x8953 + CON_19_ATI = 0x8954 + CON_20_ATI = 0x8955 + CON_21_ATI = 0x8956 + CON_22_ATI = 0x8957 + CON_23_ATI = 0x8958 + CON_24_ATI = 0x8959 + CON_25_ATI = 0x895A + CON_26_ATI = 0x895B + CON_27_ATI = 0x895C + CON_28_ATI = 0x895D + CON_29_ATI = 0x895E + CON_30_ATI = 0x895F + CON_31_ATI = 0x8960 + MOV_ATI = 0x8961 + ADD_ATI = 0x8963 + MUL_ATI = 0x8964 + SUB_ATI = 0x8965 + DOT3_ATI = 0x8966 + DOT4_ATI = 0x8967 + MAD_ATI = 0x8968 + LERP_ATI = 0x8969 + CND_ATI = 0x896A + CND0_ATI = 0x896B + DOT2_ADD_ATI = 0x896C + SECONDARY_INTERPOLATOR_ATI = 0x896D + NUM_FRAGMENT_REGISTERS_ATI = 0x896E + NUM_FRAGMENT_CONSTANTS_ATI = 0x896F + NUM_PASSES_ATI = 0x8970 + NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971 + NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972 + NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973 + NUM_LOOPBACK_COMPONENTS_ATI = 0x8974 + COLOR_ALPHA_PAIRING_ATI = 0x8975 + SWIZZLE_STR_ATI = 0x8976 + SWIZZLE_STQ_ATI = 0x8977 + SWIZZLE_STR_DR_ATI = 0x8978 + SWIZZLE_STQ_DQ_ATI = 0x8979 + SWIZZLE_STRQ_ATI = 0x897A + SWIZZLE_STRQ_DQ_ATI = 0x897B +# ??? Not clear where to put new types of mask bits yet + RED_BIT_ATI = 0x00000001 + GREEN_BIT_ATI = 0x00000002 + BLUE_BIT_ATI = 0x00000004 + 2X_BIT_ATI = 0x00000001 + 4X_BIT_ATI = 0x00000002 + 8X_BIT_ATI = 0x00000004 + HALF_BIT_ATI = 0x00000008 + QUARTER_BIT_ATI = 0x00000010 + EIGHTH_BIT_ATI = 0x00000020 + SATURATE_BIT_ATI = 0x00000040 + 2X_BIT_ATI = 0x00000001 + COMP_BIT_ATI = 0x00000002 + NEGATE_BIT_ATI = 0x00000004 + BIAS_BIT_ATI = 0x00000008 + +# ATI_future_use: 0x897C-0x897F + +############################################################################### + +# Khronos OpenML WG / OpenGL ES WG: 0x8980-0x898F + +OML_interlace enum: + INTERLACE_OML = 0x8980 + INTERLACE_READ_OML = 0x8981 + +OML_subsample enum: + FORMAT_SUBSAMPLE_24_24_OML = 0x8982 + FORMAT_SUBSAMPLE_244_244_OML = 0x8983 + +OML_resample enum: + PACK_RESAMPLE_OML = 0x8984 + UNPACK_RESAMPLE_OML = 0x8985 + RESAMPLE_REPLICATE_OML = 0x8986 + RESAMPLE_ZERO_FILL_OML = 0x8987 + RESAMPLE_AVERAGE_OML = 0x8988 + RESAMPLE_DECIMATE_OML = 0x8989 + +OES_point_size_array enum: (OpenGL ES only) + POINT_SIZE_ARRAY_TYPE_OES = 0x898A + POINT_SIZE_ARRAY_STRIDE_OES = 0x898B + POINT_SIZE_ARRAY_POINTER_OES = 0x898C + +OES_matrix_get enum: (OpenGL ES only) + MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898D + PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898E + TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898F + +############################################################################### + +# 3dlabs: 0x8990-0x899F + +############################################################################### + +# Matrox: 0x89A0-0x89FF + +############################################################################### + +# Apple: 0x8A00-0x8A7F + +APPLE_vertex_program_evaluators enum: + VERTEX_ATTRIB_MAP1_APPLE = 0x8A00 + VERTEX_ATTRIB_MAP2_APPLE = 0x8A01 + VERTEX_ATTRIB_MAP1_SIZE_APPLE = 0x8A02 + VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03 + VERTEX_ATTRIB_MAP1_ORDER_APPLE = 0x8A04 + VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = 0x8A05 + VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06 + VERTEX_ATTRIB_MAP2_COEFF_APPLE = 0x8A07 + VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08 + VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09 + +APPLE_fence enum: + DRAW_PIXELS_APPLE = 0x8A0A + FENCE_APPLE = 0x8A0B + +## From Jeremy 2006/10/18 (Bugzilla bug 632) - unknown extension name + ELEMENT_ARRAY_APPLE = 0x8A0C + ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D + ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E + +APPLE_float_pixels enum: + COLOR_FLOAT_APPLE = 0x8A0F + +# APPLE_future_use: 0x8A10 +## From Jeremy 2006/10/18 (Bugzilla bug 632) - unknown extension name +# MIN_PBUFFER_VIEWPORT_DIMS_APPLE = 0x8A10 +# ELEMENT_BUFFER_BINDING_APPLE = 0x8A11 +# Apple says the extension that defined ELEMENT_BUFFER_BINDING_APPLE +# never shipped and there's no actual collision with UNIFORM_BUFFER + +VERSION_3_1 enum: + use ARB_uniform_buffer_object UNIFORM_BUFFER + +ARB_uniform_buffer_object enum: (additional; see below) + UNIFORM_BUFFER = 0x8A11 + +APPLE_flush_buffer_range enum: + BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12 + BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13 + +APPLE_aux_depth_stencil enum: + AUX_DEPTH_STENCIL_APPLE = 0x8A14 + +APPLE_row_bytes enum: + PACK_ROW_BYTES_APPLE = 0x8A15 + UNPACK_ROW_BYTES_APPLE = 0x8A16 + +# APPLE_future_use: 0x8A17-0x8A18 + +APPLE_object_purgeable enum: + RELEASED_APPLE = 0x8A19 + VOLATILE_APPLE = 0x8A1A + RETAINED_APPLE = 0x8A1B + UNDEFINED_APPLE = 0x8A1C + PURGEABLE_APPLE = 0x8A1D + +# APPLE_future_use: 0x8A1E + +APPLE_rgb_422 enum: + RGB_422_APPLE = 0x8A1F + use APPLE_ycbcr_422 UNSIGNED_SHORT_8_8_APPLE + use APPLE_ycbcr_422 UNSIGNED_SHORT_8_8_REV_APPLE + +# APPLE_future_use: 0x8A20--0x8A27 + +VERSION_3_1 enum: + use ARB_uniform_buffer_object UNIFORM_BUFFER_BINDING + use ARB_uniform_buffer_object UNIFORM_BUFFER_START + use ARB_uniform_buffer_object UNIFORM_BUFFER_SIZE + use ARB_uniform_buffer_object MAX_VERTEX_UNIFORM_BLOCKS + use ARB_uniform_buffer_object MAX_GEOMETRY_UNIFORM_BLOCKS + use ARB_uniform_buffer_object MAX_FRAGMENT_UNIFORM_BLOCKS + use ARB_uniform_buffer_object MAX_COMBINED_UNIFORM_BLOCKS + use ARB_uniform_buffer_object MAX_UNIFORM_BUFFER_BINDINGS + use ARB_uniform_buffer_object MAX_UNIFORM_BLOCK_SIZE + use ARB_uniform_buffer_object MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS + use ARB_uniform_buffer_object MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS + use ARB_uniform_buffer_object MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS + use ARB_uniform_buffer_object UNIFORM_BUFFER_OFFSET_ALIGNMENT + use ARB_uniform_buffer_object ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH + use ARB_uniform_buffer_object ACTIVE_UNIFORM_BLOCKS + use ARB_uniform_buffer_object UNIFORM_TYPE + use ARB_uniform_buffer_object UNIFORM_SIZE + use ARB_uniform_buffer_object UNIFORM_NAME_LENGTH + use ARB_uniform_buffer_object UNIFORM_BLOCK_INDEX + use ARB_uniform_buffer_object UNIFORM_OFFSET + use ARB_uniform_buffer_object UNIFORM_ARRAY_STRIDE + use ARB_uniform_buffer_object UNIFORM_MATRIX_STRIDE + use ARB_uniform_buffer_object UNIFORM_IS_ROW_MAJOR + use ARB_uniform_buffer_object UNIFORM_BLOCK_BINDING + use ARB_uniform_buffer_object UNIFORM_BLOCK_DATA_SIZE + use ARB_uniform_buffer_object UNIFORM_BLOCK_NAME_LENGTH + use ARB_uniform_buffer_object UNIFORM_BLOCK_ACTIVE_UNIFORMS + use ARB_uniform_buffer_object UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES + use ARB_uniform_buffer_object UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER + use ARB_uniform_buffer_object UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER + use ARB_uniform_buffer_object UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER + use ARB_uniform_buffer_object INVALID_INDEX + +ARB_uniform_buffer_object enum: + UNIFORM_BUFFER_BINDING = 0x8A28 + UNIFORM_BUFFER_START = 0x8A29 + UNIFORM_BUFFER_SIZE = 0x8A2A + MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B + MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C + MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D + MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E + MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F + MAX_UNIFORM_BLOCK_SIZE = 0x8A30 + MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31 + MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32 + MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33 + UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34 + ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35 + ACTIVE_UNIFORM_BLOCKS = 0x8A36 + UNIFORM_TYPE = 0x8A37 + UNIFORM_SIZE = 0x8A38 + UNIFORM_NAME_LENGTH = 0x8A39 + UNIFORM_BLOCK_INDEX = 0x8A3A + UNIFORM_OFFSET = 0x8A3B + UNIFORM_ARRAY_STRIDE = 0x8A3C + UNIFORM_MATRIX_STRIDE = 0x8A3D + UNIFORM_IS_ROW_MAJOR = 0x8A3E + UNIFORM_BLOCK_BINDING = 0x8A3F + UNIFORM_BLOCK_DATA_SIZE = 0x8A40 + UNIFORM_BLOCK_NAME_LENGTH = 0x8A41 + UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42 + UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43 + UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44 + UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45 + UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46 + INVALID_INDEX = 0xFFFFFFFFu + +# APPLE_future_use: 0x8A47-0x8A7F + +############################################################################### + +# Matrox: 0x8A80-0x8AEF + +############################################################################### + +# Chromium (Brian Paul): 0x8AF0-0x8B2F + +############################################################################### + +# ARB HLSL shader extensions: 0x8B30-0x8B8F + + +VERSION_3_1 enum: (Promoted from ARB_shader_objects + ARB_texture_rectangle) + SAMPLER_2D_RECT = 0x8B63 # ARB_shader_objects + ARB_texture_rectangle + SAMPLER_2D_RECT_SHADOW = 0x8B64 # ARB_shader_objects + ARB_texture_rectangle + +#@@ separate extensions +VERSION_2_0 enum: (Promoted for OpenGL 2.0; only some values; renaming in many cases) +ARB_shader_objects, ARB_vertex_shader, ARB_fragment_shader enum: +NV_vertex_program3 enum: (reuses 0x8B4C) +##Shader types + room for expansion + FRAGMENT_SHADER = 0x8B30 # VERSION_2_0 + FRAGMENT_SHADER_ARB = 0x8B30 # ARB_fragment_shader + VERTEX_SHADER = 0x8B31 # VERSION_2_0 + VERTEX_SHADER_ARB = 0x8B31 # ARB_vertex_shader +# ARB_future_use: 0x8B32-0x8B3F (for shader types) +##Container types + room for expansion + PROGRAM_OBJECT_ARB = 0x8B40 # ARB_shader_objects +# ARB_future_use: 0x8B41-0x8B47 (for container types) +##Misc. shader enums + SHADER_OBJECT_ARB = 0x8B48 # ARB_shader_objects + MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49 # VERSION_2_0 + MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49 # ARB_fragment_shader + MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A # VERSION_2_0 + MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A # ARB_vertex_shader + MAX_VARYING_FLOATS = 0x8B4B # VERSION_2_0 + MAX_VARYING_FLOATS_ARB = 0x8B4B # ARB_vertex_shader + MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C # VERSION_2_0 + MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C # ARB_vertex_shader, NV_vertex_program3 + MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D # VERSION_2_0 + MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D # ARB_vertex_shader + OBJECT_TYPE_ARB = 0x8B4E # ARB_shader_objects + SHADER_TYPE = 0x8B4F # VERSION_2_0 (renamed) + OBJECT_SUBTYPE_ARB = 0x8B4F # ARB_shader_objects +##Attribute types + room for expansion. + FLOAT_VEC2 = 0x8B50 # VERSION_2_0 + FLOAT_VEC2_ARB = 0x8B50 # ARB_shader_objects + FLOAT_VEC3 = 0x8B51 # VERSION_2_0 + FLOAT_VEC3_ARB = 0x8B51 # ARB_shader_objects + FLOAT_VEC4 = 0x8B52 # VERSION_2_0 + FLOAT_VEC4_ARB = 0x8B52 # ARB_shader_objects + INT_VEC2 = 0x8B53 # VERSION_2_0 + INT_VEC2_ARB = 0x8B53 # ARB_shader_objects + INT_VEC3 = 0x8B54 # VERSION_2_0 + INT_VEC3_ARB = 0x8B54 # ARB_shader_objects + INT_VEC4 = 0x8B55 # VERSION_2_0 + INT_VEC4_ARB = 0x8B55 # ARB_shader_objects + BOOL = 0x8B56 # VERSION_2_0 + BOOL_ARB = 0x8B56 # ARB_shader_objects + BOOL_VEC2 = 0x8B57 # VERSION_2_0 + BOOL_VEC2_ARB = 0x8B57 # ARB_shader_objects + BOOL_VEC3 = 0x8B58 # VERSION_2_0 + BOOL_VEC3_ARB = 0x8B58 # ARB_shader_objects + BOOL_VEC4 = 0x8B59 # VERSION_2_0 + BOOL_VEC4_ARB = 0x8B59 # ARB_shader_objects + FLOAT_MAT2 = 0x8B5A # VERSION_2_0 + FLOAT_MAT2_ARB = 0x8B5A # ARB_shader_objects + FLOAT_MAT3 = 0x8B5B # VERSION_2_0 + FLOAT_MAT3_ARB = 0x8B5B # ARB_shader_objects + FLOAT_MAT4 = 0x8B5C # VERSION_2_0 + FLOAT_MAT4_ARB = 0x8B5C # ARB_shader_objects + SAMPLER_1D = 0x8B5D # VERSION_2_0 + SAMPLER_1D_ARB = 0x8B5D # ARB_shader_objects + SAMPLER_2D = 0x8B5E # VERSION_2_0 + SAMPLER_2D_ARB = 0x8B5E # ARB_shader_objects + SAMPLER_3D = 0x8B5F # VERSION_2_0 + SAMPLER_3D_ARB = 0x8B5F # ARB_shader_objects + SAMPLER_CUBE = 0x8B60 # VERSION_2_0 + SAMPLER_CUBE_ARB = 0x8B60 # ARB_shader_objects + SAMPLER_1D_SHADOW = 0x8B61 # VERSION_2_0 + SAMPLER_1D_SHADOW_ARB = 0x8B61 # ARB_shader_objects + SAMPLER_2D_SHADOW = 0x8B62 # VERSION_2_0 + SAMPLER_2D_SHADOW_ARB = 0x8B62 # ARB_shader_objects + SAMPLER_2D_RECT_ARB = 0x8B63 # ARB_shader_objects + SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64 # ARB_shader_objects + FLOAT_MAT2x3 = 0x8B65 # VERSION_2_1 + FLOAT_MAT2x4 = 0x8B66 # VERSION_2_1 + FLOAT_MAT3x2 = 0x8B67 # VERSION_2_1 + FLOAT_MAT3x4 = 0x8B68 # VERSION_2_1 + FLOAT_MAT4x2 = 0x8B69 # VERSION_2_1 + FLOAT_MAT4x3 = 0x8B6A # VERSION_2_1 +# ARB_future_use: 0x8B6B-0x8B7F (for attribute types) + DELETE_STATUS = 0x8B80 # VERSION_2_0 (renamed) + OBJECT_DELETE_STATUS_ARB = 0x8B80 # ARB_shader_objects + COMPILE_STATUS = 0x8B81 # VERSION_2_0 (renamed) + OBJECT_COMPILE_STATUS_ARB = 0x8B81 # ARB_shader_objects + LINK_STATUS = 0x8B82 # VERSION_2_0 (renamed) + OBJECT_LINK_STATUS_ARB = 0x8B82 # ARB_shader_objects + VALIDATE_STATUS = 0x8B83 # VERSION_2_0 (renamed) + OBJECT_VALIDATE_STATUS_ARB = 0x8B83 # ARB_shader_objects + INFO_LOG_LENGTH = 0x8B84 # VERSION_2_0 (renamed) + OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84 # ARB_shader_objects + ATTACHED_SHADERS = 0x8B85 # VERSION_2_0 (renamed) + OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85 # ARB_shader_objects + ACTIVE_UNIFORMS = 0x8B86 # VERSION_2_0 (renamed) + OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86 # ARB_shader_objects + ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87 # VERSION_2_0 (renamed) + OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87 # ARB_shader_objects + SHADER_SOURCE_LENGTH = 0x8B88 # VERSION_2_0 (renamed) + OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88 # ARB_shader_objects + ACTIVE_ATTRIBUTES = 0x8B89 # VERSION_2_0 (renamed) + OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89 # ARB_vertex_shader + ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A # VERSION_2_0 (renamed) + OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A # ARB_vertex_shader + FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B # VERSION_2_0 + FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B # ARB_fragment_shader + SHADING_LANGUAGE_VERSION = 0x8B8C # VERSION_2_0 + SHADING_LANGUAGE_VERSION_ARB = 0x8B8C # ARB_shading_language_100 + +# Aliases ARB_shader_objects enum above +OES_texture3D enum: (OpenGL ES only; additional; see above) + SAMPLER_3D_OES = 0x8B5F # ARB_shader_objects + +# Aliases ARB_fragment_shader enum above +OES_standard_derivatives enum: (OpenGL ES only) + FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B + +VERSION_3_0 enum: + MAX_VARYING_COMPONENTS = 0x8B4B # VERSION_3_0 # alias GL_MAX_VARYING_FLOATS + +ARB_geometry_shader4 enum: (additional; see below; note: no ARB suffixes) + use VERSION_3_0 MAX_VARYING_COMPONENTS + +EXT_geometry_shader4 enum: (additional; see below) + MAX_VARYING_COMPONENTS_EXT = 0x8B4B + +VERSION_2_0 enum: + CURRENT_PROGRAM = 0x8B8D + +# Aliases CURRENT_PROGRAM +EXT_separate_shader_objects enum: + ACTIVE_PROGRAM_EXT = 0x8B8D + +# ARB_future_use: 0x8B8E-0x8B8F + +############################################################################### + +# Khronos OpenGL ES WG: 0x8B90-0x8B9F + +OES_compressed_paletted_texture enum: (OpenGL ES only) + PALETTE4_RGB8_OES = 0x8B90 + PALETTE4_RGBA8_OES = 0x8B91 + PALETTE4_R5_G6_B5_OES = 0x8B92 + PALETTE4_RGBA4_OES = 0x8B93 + PALETTE4_RGB5_A1_OES = 0x8B94 + PALETTE8_RGB8_OES = 0x8B95 + PALETTE8_RGBA8_OES = 0x8B96 + PALETTE8_R5_G6_B5_OES = 0x8B97 + PALETTE8_RGBA4_OES = 0x8B98 + PALETTE8_RGB5_A1_OES = 0x8B99 + +OES_read_format enum: (OpenGL ES, also implemented in Mesa) + IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A + IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B + +OES_point_size_array enum: (OpenGL ES only; additional; see above) + POINT_SIZE_ARRAY_OES = 0x8B9C + +OES_draw_texture enum: (OpenGL ES only) + TEXTURE_CROP_RECT_OES = 0x8B9D + +OES_matrix_palette enum: (OpenGL ES only) + MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 0x8B9E + +OES_point_size_array enum: (OpenGL ES only; additional; see above) + POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 0x8B9F + +############################################################################### + +# Seaweed: 0x8BA0-0x8BAF + +############################################################################### + +# Mesa: 0x8BB0-0x8BBF +# Probably one of the two 0x8BB4 enums should be 0x8BB5, but the +# extension spec is not complete in any event. +MESA_program_debug enum: + FRAGMENT_PROGRAM_POSITION_MESA = 0x8BB0 + FRAGMENT_PROGRAM_CALLBACK_MESA = 0x8BB1 + FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA = 0x8BB2 + FRAGMENT_PROGRAM_CALLBACK_DATA_MESA = 0x8BB3 + VERTEX_PROGRAM_CALLBACK_MESA = 0x8BB4 + VERTEX_PROGRAM_POSITION_MESA = 0x8BB4 + VERTEX_PROGRAM_CALLBACK_FUNC_MESA = 0x8BB6 + VERTEX_PROGRAM_CALLBACK_DATA_MESA = 0x8BB7 + +############################################################################### + +# ATI: 0x8BC0-0x8BFF + +AMD_performance_monitor enum: + COUNTER_TYPE_AMD = 0x8BC0 + COUNTER_RANGE_AMD = 0x8BC1 + UNSIGNED_INT64_AMD = 0x8BC2 + PERCENTAGE_AMD = 0x8BC3 + PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4 + PERFMON_RESULT_SIZE_AMD = 0x8BC5 + PERFMON_RESULT_AMD = 0x8BC6 + +# ATI_future_use: 0x8BC7-0x8BD1 + +QCOM_extended_get enum: (OpenGL ES only) + TEXTURE_WIDTH_QCOM = 0x8BD2 + TEXTURE_HEIGHT_QCOM = 0x8BD3 + TEXTURE_DEPTH_QCOM = 0x8BD4 + TEXTURE_INTERNAL_FORMAT_QCOM = 0x8BD5 + TEXTURE_FORMAT_QCOM = 0x8BD6 + TEXTURE_TYPE_QCOM = 0x8BD7 + TEXTURE_IMAGE_VALID_QCOM = 0x8BD8 + TEXTURE_NUM_LEVELS_QCOM = 0x8BD9 + TEXTURE_TARGET_QCOM = 0x8BDA + TEXTURE_OBJECT_VALID_QCOM = 0x8BDB + STATE_RESTORE = 0x8BDC + +# ATI_future_use: 0x8BDD-0x8BFF + +############################################################################### + +# Imagination Tech.: 0x8C00-0x8C0F + +IMG_texture_compression_pvrtc enum: (OpenGL ES only) + COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8C00 + COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8C01 + COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8C02 + COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8C03 + +IMG_texture_env_enhanced_fixed_function enum: (OpenGL ES only) + MODULATE_COLOR_IMG = 0x8C04 + RECIP_ADD_SIGNED_ALPHA_IMG = 0x8C05 + TEXTURE_ALPHA_MODULATE_IMG = 0x8C06 + FACTOR_ALPHA_MODULATE_IMG = 0x8C07 + FRAGMENT_ALPHA_MODULATE_IMG = 0x8C08 + ADD_BLEND_IMG = 0x8C09 + +############################################################################### + +# NVIDIA: 0x8C10-0x8C8F (Pat Brown) + +VERSION_3_0 enum: + use ARB_framebuffer_object TEXTURE_RED_TYPE + use ARB_framebuffer_object TEXTURE_GREEN_TYPE + use ARB_framebuffer_object TEXTURE_BLUE_TYPE + use ARB_framebuffer_object TEXTURE_ALPHA_TYPE + use ARB_framebuffer_object TEXTURE_LUMINANCE_TYPE + use ARB_framebuffer_object TEXTURE_INTENSITY_TYPE + use ARB_framebuffer_object TEXTURE_DEPTH_TYPE + use ARB_framebuffer_object UNSIGNED_NORMALIZED + +ARB_framebuffer_object enum: (note: no ARB suffixes) + TEXTURE_RED_TYPE = 0x8C10 # VERSION_3_0 / ARB_fbo + TEXTURE_GREEN_TYPE = 0x8C11 # VERSION_3_0 / ARB_fbo + TEXTURE_BLUE_TYPE = 0x8C12 # VERSION_3_0 / ARB_fbo + TEXTURE_ALPHA_TYPE = 0x8C13 # VERSION_3_0 / ARB_fbo + TEXTURE_LUMINANCE_TYPE = 0x8C14 # VERSION_3_0 / ARB_fbo + TEXTURE_INTENSITY_TYPE = 0x8C15 # VERSION_3_0 / ARB_fbo + TEXTURE_DEPTH_TYPE = 0x8C16 # VERSION_3_0 / ARB_fbo + UNSIGNED_NORMALIZED = 0x8C17 # VERSION_3_0 / ARB_fbo + +ARB_texture_float enum: (additional; see above) + TEXTURE_RED_TYPE_ARB = 0x8C10 + TEXTURE_GREEN_TYPE_ARB = 0x8C11 + TEXTURE_BLUE_TYPE_ARB = 0x8C12 + TEXTURE_ALPHA_TYPE_ARB = 0x8C13 + TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14 + TEXTURE_INTENSITY_TYPE_ARB = 0x8C15 + TEXTURE_DEPTH_TYPE_ARB = 0x8C16 + UNSIGNED_NORMALIZED_ARB = 0x8C17 + +VERSION_3_0 enum: + TEXTURE_1D_ARRAY = 0x8C18 # VERSION_3_0 + PROXY_TEXTURE_1D_ARRAY = 0x8C19 # VERSION_3_0 + TEXTURE_2D_ARRAY = 0x8C1A # VERSION_3_0 + PROXY_TEXTURE_2D_ARRAY = 0x8C1B # VERSION_3_0 + TEXTURE_BINDING_1D_ARRAY = 0x8C1C # VERSION_3_0 + TEXTURE_BINDING_2D_ARRAY = 0x8C1D # VERSION_3_0 + +EXT_texture_array enum: + TEXTURE_1D_ARRAY_EXT = 0x8C18 + PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19 + TEXTURE_2D_ARRAY_EXT = 0x8C1A + PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B + TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C + TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D + +# NV_future_use: 0x8C1E-0x8C25 + +VERSION_3_2 enum: + MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29 + +ARB_geometry_shader4 enum: (additional; see below) + MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB = 0x8C29 + +NV_geometry_program4 enum: + GEOMETRY_PROGRAM_NV = 0x8C26 + MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27 + MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28 + MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29 + +VERSION_3_1 enum: + TEXTURE_BUFFER = 0x8C2A + MAX_TEXTURE_BUFFER_SIZE = 0x8C2B + TEXTURE_BINDING_BUFFER = 0x8C2C + TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D + TEXTURE_BUFFER_FORMAT = 0x8C2E + +ARB_texture_buffer_object enum: + TEXTURE_BUFFER_ARB = 0x8C2A + MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B + TEXTURE_BINDING_BUFFER_ARB = 0x8C2C + TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = 0x8C2D + TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E + +EXT_texture_buffer_object enum: + TEXTURE_BUFFER_EXT = 0x8C2A + MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B + TEXTURE_BINDING_BUFFER_EXT = 0x8C2C + TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D + TEXTURE_BUFFER_FORMAT_EXT = 0x8C2E + +# NV_future_use: 0x8C2F-0x8C35 + +ARB_sample_shading enum: + SAMPLE_SHADING_ARB = 0x8C36 + MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37 + +# NV_future_use: 0x8C38-0x8C39 + +VERSION_3_0 enum: + R11F_G11F_B10F = 0x8C3A # VERSION_3_0 + UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B # VERSION_3_0 + +EXT_packed_float enum: + R11F_G11F_B10F_EXT = 0x8C3A + UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B + RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C + +VERSION_3_0 enum: + RGB9_E5 = 0x8C3D # VERSION_3_0 + UNSIGNED_INT_5_9_9_9_REV = 0x8C3E # VERSION_3_0 + TEXTURE_SHARED_SIZE = 0x8C3F # VERSION_3_0 + +EXT_texture_shared_exponent enum: + RGB9_E5_EXT = 0x8C3D + UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E + TEXTURE_SHARED_SIZE_EXT = 0x8C3F + +VERSION_2_1 enum: (Generic formats promoted for OpenGL 2.1) + SRGB = 0x8C40 # VERSION_2_1 + SRGB8 = 0x8C41 # VERSION_2_1 + SRGB_ALPHA = 0x8C42 # VERSION_2_1 + SRGB8_ALPHA8 = 0x8C43 # VERSION_2_1 + SLUMINANCE_ALPHA = 0x8C44 # VERSION_2_1 + SLUMINANCE8_ALPHA8 = 0x8C45 # VERSION_2_1 + SLUMINANCE = 0x8C46 # VERSION_2_1 + SLUMINANCE8 = 0x8C47 # VERSION_2_1 + COMPRESSED_SRGB = 0x8C48 # VERSION_2_1 + COMPRESSED_SRGB_ALPHA = 0x8C49 # VERSION_2_1 + COMPRESSED_SLUMINANCE = 0x8C4A # VERSION_2_1 + COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B # VERSION_2_1 + +EXT_texture_sRGB enum: + SRGB_EXT = 0x8C40 # EXT_texture_sRGB + SRGB8_EXT = 0x8C41 # EXT_texture_sRGB + SRGB_ALPHA_EXT = 0x8C42 # EXT_texture_sRGB + SRGB8_ALPHA8_EXT = 0x8C43 # EXT_texture_sRGB + SLUMINANCE_ALPHA_EXT = 0x8C44 # EXT_texture_sRGB + SLUMINANCE8_ALPHA8_EXT = 0x8C45 # EXT_texture_sRGB + SLUMINANCE_EXT = 0x8C46 # EXT_texture_sRGB + SLUMINANCE8_EXT = 0x8C47 # EXT_texture_sRGB + COMPRESSED_SRGB_EXT = 0x8C48 # EXT_texture_sRGB + COMPRESSED_SRGB_ALPHA_EXT = 0x8C49 # EXT_texture_sRGB + COMPRESSED_SLUMINANCE_EXT = 0x8C4A # EXT_texture_sRGB + COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B # EXT_texture_sRGB + COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C + COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D + COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E + COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F + +# NV_future_use: 0x8C50-0x8C6F + +EXT_texture_compression_latc enum: + COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70 + COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71 + COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72 + COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73 + +# NV_future_use: 0x8C74-0x8C75 + +#@@ separate extensions +VERSION_3_0 enum: +EXT_transform_feedback enum: +NV_transform_feedback enum: + TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76 # VERSION_3_0 + TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = 0x8C76 + BACK_PRIMARY_COLOR_NV = 0x8C77 + BACK_SECONDARY_COLOR_NV = 0x8C78 + TEXTURE_COORD_NV = 0x8C79 + CLIP_DISTANCE_NV = 0x8C7A + VERTEX_ID_NV = 0x8C7B + PRIMITIVE_ID_NV = 0x8C7C + GENERIC_ATTRIB_NV = 0x8C7D + TRANSFORM_FEEDBACK_ATTRIBS_NV = 0x8C7E + TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F # VERSION_3_0 + TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = 0x8C7F + TRANSFORM_FEEDBACK_BUFFER_MODE_NV = 0x8C7F + MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80 # VERSION_3_0 + MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80 + MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80 + ACTIVE_VARYINGS_NV = 0x8C81 + ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82 + TRANSFORM_FEEDBACK_VARYINGS = 0x8C83 # VERSION_3_0 + TRANSFORM_FEEDBACK_VARYINGS_EXT = 0x8C83 + TRANSFORM_FEEDBACK_VARYINGS_NV = 0x8C83 + TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84 # VERSION_3_0 + TRANSFORM_FEEDBACK_BUFFER_START_EXT = 0x8C84 + TRANSFORM_FEEDBACK_BUFFER_START_NV = 0x8C84 + TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85 # VERSION_3_0 + TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = 0x8C85 + TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = 0x8C85 + TRANSFORM_FEEDBACK_RECORD_NV = 0x8C86 + PRIMITIVES_GENERATED = 0x8C87 # VERSION_3_0 + PRIMITIVES_GENERATED_EXT = 0x8C87 + PRIMITIVES_GENERATED_NV = 0x8C87 + TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88 # VERSION_3_0 + TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = 0x8C88 + TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = 0x8C88 + RASTERIZER_DISCARD = 0x8C89 # VERSION_3_0 + RASTERIZER_DISCARD_EXT = 0x8C89 + RASTERIZER_DISCARD_NV = 0x8C89 + MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A # VERSION_3_0 + MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = 0x8C8A + MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV = 0x8C8A + MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B # VERSION_3_0 + MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = 0x8C8B + MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = 0x8C8B + INTERLEAVED_ATTRIBS = 0x8C8C # VERSION_3_0 + INTERLEAVED_ATTRIBS_EXT = 0x8C8C + INTERLEAVED_ATTRIBS_NV = 0x8C8C + SEPARATE_ATTRIBS = 0x8C8D # VERSION_3_0 + SEPARATE_ATTRIBS_EXT = 0x8C8D + SEPARATE_ATTRIBS_NV = 0x8C8D + TRANSFORM_FEEDBACK_BUFFER = 0x8C8E # VERSION_3_0 + TRANSFORM_FEEDBACK_BUFFER_EXT = 0x8C8E + TRANSFORM_FEEDBACK_BUFFER_NV = 0x8C8E + TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F # VERSION_3_0 + TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = 0x8C8F + TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = 0x8C8F + +############################################################################### + +# ATI: 0x8C90-0x8C9F (Affie Munshi, OpenGL ES extensions) + +# AMD_future_use: 0x8C90-0x8C91 + +AMD_compressed_ATC_texture enum: (OpenGL ES only) + ATC_RGB_AMD = 0x8C92 + ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93 + +# AMD_future_use: 0x8C94-0x8C9F + +############################################################################### + +# OpenGL ARB: 0x8CA0-0x8CAF + +VERSION_2_0 enum: + POINT_SPRITE_COORD_ORIGIN = 0x8CA0 + LOWER_LEFT = 0x8CA1 + UPPER_LEFT = 0x8CA2 + STENCIL_BACK_REF = 0x8CA3 + STENCIL_BACK_VALUE_MASK = 0x8CA4 + STENCIL_BACK_WRITEMASK = 0x8CA5 + +VERSION_3_0 enum: + use ARB_framebuffer_object FRAMEBUFFER_BINDING + use ARB_framebuffer_object DRAW_FRAMEBUFFER_BINDING + use ARB_framebuffer_object RENDERBUFFER_BINDING + +ARB_framebuffer_object enum: (note: no ARB suffixes) + FRAMEBUFFER_BINDING = 0x8CA6 # VERSION_3_0 / ARB_fbo + DRAW_FRAMEBUFFER_BINDING = 0x8CA6 # VERSION_3_0 / ARB_fbo # alias GL_FRAMEBUFFER_BINDING + RENDERBUFFER_BINDING = 0x8CA7 # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_object enum: (additional; see below) + FRAMEBUFFER_BINDING_EXT = 0x8CA6 + RENDERBUFFER_BINDING_EXT = 0x8CA7 + +EXT_framebuffer_blit enum: (additional; see below) + DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6 # EXT_framebuffer_blit # alias GL_FRAMEBUFFER_BINDING_EXT + +# Aliases EXT_framebuffer_object enums above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + FRAMEBUFFER_BINDING_OES = 0x8CA6 + RENDERBUFFER_BINDING_OES = 0x8CA7 + +VERSION_3_0 enum: + use ARB_framebuffer_object READ_FRAMEBUFFER + use ARB_framebuffer_object DRAW_FRAMEBUFFER + use ARB_framebuffer_object READ_FRAMEBUFFER_BINDING + +ARB_framebuffer_object enum: (note: no ARB suffixes) + READ_FRAMEBUFFER = 0x8CA8 # VERSION_3_0 / ARB_fbo + DRAW_FRAMEBUFFER = 0x8CA9 # VERSION_3_0 / ARB_fbo + READ_FRAMEBUFFER_BINDING = 0x8CAA # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_blit enum: + READ_FRAMEBUFFER_EXT = 0x8CA8 + DRAW_FRAMEBUFFER_EXT = 0x8CA9 + DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6 # alias GL_FRAMEBUFFER_BINDING_EXT + READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA + +VERSION_3_0 enum: + use ARB_framebuffer_object RENDERBUFFER_SAMPLES + +ARB_framebuffer_object enum: (note: no ARB suffixes) + RENDERBUFFER_SAMPLES = 0x8CAB # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_multisample enum: + RENDERBUFFER_SAMPLES_EXT = 0x8CAB + +NV_framebuffer_multisample_coverage enum: (additional; see below) + RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB + +# All enums except external format are incompatible with NV_depth_buffer_float +VERSION_3_0 enum: +ARB_depth_buffer_float enum: (note: no ARB suffixes) + DEPTH_COMPONENT32F = 0x8CAC + DEPTH32F_STENCIL8 = 0x8CAD + +# ARB_future_use: 0x8CAF + +############################################################################### + +# 3Dlabs: 0x8CB0-0x8CCF (Barthold Lichtenbelt, 2004/12/1) + +############################################################################### + +# OpenGL ARB: 0x8CD0-0x8D5F (Framebuffer object specification + headroom) + +#@@ separate extensions +VERSION_3_0 enum: +ARB_geometry_shader4 enum: (additional; see below; note: no ARB suffixes) +ARB_framebuffer_object enum: (note: no ARB suffixes) +EXT_framebuffer_object enum: (additional; see above) + FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0 + FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1 + FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2 + FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3 + FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4 + FRAMEBUFFER_COMPLETE = 0x8CD5 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_COMPLETE_EXT = 0x8CD5 + FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6 + FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7 +## Removed 2005/09/26 in revision #117 of the extension: +## FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = 0x8CD8 + FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9 + FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA + FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB + FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC + FRAMEBUFFER_UNSUPPORTED = 0x8CDD # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD +## Removed 2005/05/31 in revision #113 of the extension: +## FRAMEBUFFER_STATUS_ERROR_EXT = 0x8CDE + MAX_COLOR_ATTACHMENTS = 0x8CDF # VERSION_3_0 / ARB_fbo + MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF + COLOR_ATTACHMENT0 = 0x8CE0 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT0_EXT = 0x8CE0 + COLOR_ATTACHMENT1 = 0x8CE1 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT1_EXT = 0x8CE1 + COLOR_ATTACHMENT2 = 0x8CE2 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT2_EXT = 0x8CE2 + COLOR_ATTACHMENT3 = 0x8CE3 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT3_EXT = 0x8CE3 + COLOR_ATTACHMENT4 = 0x8CE4 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT4_EXT = 0x8CE4 + COLOR_ATTACHMENT5 = 0x8CE5 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT5_EXT = 0x8CE5 + COLOR_ATTACHMENT6 = 0x8CE6 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT6_EXT = 0x8CE6 + COLOR_ATTACHMENT7 = 0x8CE7 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT7_EXT = 0x8CE7 + COLOR_ATTACHMENT8 = 0x8CE8 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT8_EXT = 0x8CE8 + COLOR_ATTACHMENT9 = 0x8CE9 # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT9_EXT = 0x8CE9 + COLOR_ATTACHMENT10 = 0x8CEA # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT10_EXT = 0x8CEA + COLOR_ATTACHMENT11 = 0x8CEB # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT11_EXT = 0x8CEB + COLOR_ATTACHMENT12 = 0x8CEC # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT12_EXT = 0x8CEC + COLOR_ATTACHMENT13 = 0x8CED # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT13_EXT = 0x8CED + COLOR_ATTACHMENT14 = 0x8CEE # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT14_EXT = 0x8CEE + COLOR_ATTACHMENT15 = 0x8CEF # VERSION_3_0 / ARB_fbo + COLOR_ATTACHMENT15_EXT = 0x8CEF +# 0x8CF0-0x8CFF reserved for color attachments 16-31, if needed + DEPTH_ATTACHMENT = 0x8D00 # VERSION_3_0 / ARB_fbo + DEPTH_ATTACHMENT_EXT = 0x8D00 +# 0x8D01-0x8D1F reserved for depth attachments 1-31, if needed + STENCIL_ATTACHMENT = 0x8D20 # VERSION_3_0 / ARB_fbo + STENCIL_ATTACHMENT_EXT = 0x8D20 +# 0x8D21-0x8D3F reserved for stencil attachments 1-31, if needed + FRAMEBUFFER = 0x8D40 # VERSION_3_0 / ARB_fbo + FRAMEBUFFER_EXT = 0x8D40 + RENDERBUFFER = 0x8D41 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_EXT = 0x8D41 + RENDERBUFFER_WIDTH = 0x8D42 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_WIDTH_EXT = 0x8D42 + RENDERBUFFER_HEIGHT = 0x8D43 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_HEIGHT_EXT = 0x8D43 + RENDERBUFFER_INTERNAL_FORMAT = 0x8D44 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44 +# 0x8D45 unused (reserved for STENCIL_INDEX_EXT, but now use core STENCIL_INDEX instead) + STENCIL_INDEX1 = 0x8D46 # VERSION_3_0 / ARB_fbo + STENCIL_INDEX1_EXT = 0x8D46 + STENCIL_INDEX4 = 0x8D47 # VERSION_3_0 / ARB_fbo + STENCIL_INDEX4_EXT = 0x8D47 + STENCIL_INDEX8 = 0x8D48 # VERSION_3_0 / ARB_fbo + STENCIL_INDEX8_EXT = 0x8D48 + STENCIL_INDEX16 = 0x8D49 # VERSION_3_0 / ARB_fbo + STENCIL_INDEX16_EXT = 0x8D49 +# 0x8D4A-0x8D4D reserved for additional stencil formats +# Added 2005/05/31 in revision #113 of the extension: + RENDERBUFFER_RED_SIZE = 0x8D50 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_RED_SIZE_EXT = 0x8D50 + RENDERBUFFER_GREEN_SIZE = 0x8D51 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_GREEN_SIZE_EXT = 0x8D51 + RENDERBUFFER_BLUE_SIZE = 0x8D52 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_BLUE_SIZE_EXT = 0x8D52 + RENDERBUFFER_ALPHA_SIZE = 0x8D53 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_ALPHA_SIZE_EXT = 0x8D53 + RENDERBUFFER_DEPTH_SIZE = 0x8D54 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_DEPTH_SIZE_EXT = 0x8D54 + RENDERBUFFER_STENCIL_SIZE = 0x8D55 # VERSION_3_0 / ARB_fbo + RENDERBUFFER_STENCIL_SIZE_EXT = 0x8D55 + +# Aliases EXT_framebuffer_object enum above +# @@@??? does this appear in OES_texture3D, or OES_framebuffer_object? +# extension spec & gl2ext.h disagree! +OES_texture3D enum: (OpenGL ES only; additional; see above) + FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8CD4 + +# Aliases EXT_framebuffer_object enums above +OES_framebuffer_object enum: (OpenGL ES only; additional; see below) + FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 0x8CD0 + FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 0x8CD1 + FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 0x8CD2 + FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 0x8CD3 + FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8CD4 + FRAMEBUFFER_COMPLETE_OES = 0x8CD5 + FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 0x8CD6 + FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 0x8CD7 + FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 0x8CD9 + FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 0x8CDA + FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES = 0x8CDB + FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES = 0x8CDC + FRAMEBUFFER_UNSUPPORTED_OES = 0x8CDD + COLOR_ATTACHMENT0_OES = 0x8CE0 + DEPTH_ATTACHMENT_OES = 0x8D00 + STENCIL_ATTACHMENT_OES = 0x8D20 + FRAMEBUFFER_OES = 0x8D40 + RENDERBUFFER_OES = 0x8D41 + RENDERBUFFER_WIDTH_OES = 0x8D42 + RENDERBUFFER_HEIGHT_OES = 0x8D43 + RENDERBUFFER_INTERNAL_FORMAT_OES = 0x8D44 + STENCIL_INDEX1_OES = 0x8D46 + STENCIL_INDEX4_OES = 0x8D47 + STENCIL_INDEX8_OES = 0x8D48 + RENDERBUFFER_RED_SIZE_OES = 0x8D50 + RENDERBUFFER_GREEN_SIZE_OES = 0x8D51 + RENDERBUFFER_BLUE_SIZE_OES = 0x8D52 + RENDERBUFFER_ALPHA_SIZE_OES = 0x8D53 + RENDERBUFFER_DEPTH_SIZE_OES = 0x8D54 + RENDERBUFFER_STENCIL_SIZE_OES = 0x8D55 + +OES_stencil1 enum: (OpenGL ES only; additional; see below) + use OES_framebuffer_object STENCIL_INDEX1_OES + +OES_stencil4 enum: (OpenGL ES only; additional; see below) + use OES_framebuffer_object STENCIL_INDEX4_OES + +OES_stencil8 enum: (OpenGL ES only; additional; see below) + use OES_framebuffer_object STENCIL_INDEX8_OES + +VERSION_3_0 enum: +ARB_framebuffer_object enum: (note: no ARB suffixes) +# Added 2006/10/10 in revision #6b of the extension. + FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56 # VERSION_3_0 / ARB_fbo + MAX_SAMPLES = 0x8D57 # VERSION_3_0 / ARB_fbo + +EXT_framebuffer_multisample enum: (additional; see above) + FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56 + MAX_SAMPLES_EXT = 0x8D57 + +# 0x8D58-0x8D5F reserved for additional FBO enums + +NV_geometry_program4 enum: (additional; see above) + FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4 + +############################################################################### + +# Khronos OpenGL ES WG: 0x8D60-0x8D6F + +OES_texture_cube_map enum: (OpenGL ES only) + TEXTURE_GEN_STR_OES = 0x8D60 + +OES_texture_float enum: (OpenGL ES only) + HALF_FLOAT_OES = 0x8D61 + +OES_vertex_half_float enum: (OpenGL ES only) + use OES_texture_float HALF_FLOAT_OES + +OES_framebuffer_object enum: (OpenGL ES only) + RGB565_OES = 0x8D62 + +# Khronos_future_use: 0x8D63 + +OES_compressed_ETC1_RGB8_texture enum: (OpenGL ES only) + ETC1_RGB8_OES = 0x8D64 + +OES_EGL_image_external enum: (OpenGL ES only) (bug 4621) + TEXTURE_EXTERNAL_OES = 0x8D65 + SAMPLER_EXTERNAL_OES = 0x8D66 + TEXTURE_BINDING_EXTERNAL_OES = 0x8D67 + REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68 + +# Khronos_future_use: 0x8D69-0x8D6F + +############################################################################### + +# NVIDIA: 0x8D70-0x8DEF +# Reserved per email from Pat Brown 2005/10/13 + +#@@ separate extensions +VERSION_3_0 enum: +EXT_texture_integer enum: + RGBA32UI = 0x8D70 # VERSION_3_0 + RGBA32UI_EXT = 0x8D70 + RGB32UI = 0x8D71 # VERSION_3_0 + RGB32UI_EXT = 0x8D71 + ALPHA32UI_EXT = 0x8D72 + INTENSITY32UI_EXT = 0x8D73 + LUMINANCE32UI_EXT = 0x8D74 + LUMINANCE_ALPHA32UI_EXT = 0x8D75 + RGBA16UI = 0x8D76 # VERSION_3_0 + RGBA16UI_EXT = 0x8D76 + RGB16UI = 0x8D77 # VERSION_3_0 + RGB16UI_EXT = 0x8D77 + ALPHA16UI_EXT = 0x8D78 + INTENSITY16UI_EXT = 0x8D79 + LUMINANCE16UI_EXT = 0x8D7A + LUMINANCE_ALPHA16UI_EXT = 0x8D7B + RGBA8UI = 0x8D7C # VERSION_3_0 + RGBA8UI_EXT = 0x8D7C + RGB8UI = 0x8D7D # VERSION_3_0 + RGB8UI_EXT = 0x8D7D + ALPHA8UI_EXT = 0x8D7E + INTENSITY8UI_EXT = 0x8D7F + LUMINANCE8UI_EXT = 0x8D80 + LUMINANCE_ALPHA8UI_EXT = 0x8D81 + RGBA32I = 0x8D82 # VERSION_3_0 + RGBA32I_EXT = 0x8D82 + RGB32I = 0x8D83 # VERSION_3_0 + RGB32I_EXT = 0x8D83 + ALPHA32I_EXT = 0x8D84 + INTENSITY32I_EXT = 0x8D85 + LUMINANCE32I_EXT = 0x8D86 + LUMINANCE_ALPHA32I_EXT = 0x8D87 + RGBA16I = 0x8D88 # VERSION_3_0 + RGBA16I_EXT = 0x8D88 + RGB16I = 0x8D89 # VERSION_3_0 + RGB16I_EXT = 0x8D89 + ALPHA16I_EXT = 0x8D8A + INTENSITY16I_EXT = 0x8D8B + LUMINANCE16I_EXT = 0x8D8C + LUMINANCE_ALPHA16I_EXT = 0x8D8D + RGBA8I = 0x8D8E # VERSION_3_0 + RGBA8I_EXT = 0x8D8E + RGB8I = 0x8D8F # VERSION_3_0 + RGB8I_EXT = 0x8D8F + ALPHA8I_EXT = 0x8D90 + INTENSITY8I_EXT = 0x8D91 + LUMINANCE8I_EXT = 0x8D92 + LUMINANCE_ALPHA8I_EXT = 0x8D93 + RED_INTEGER = 0x8D94 # VERSION_3_0 + RED_INTEGER_EXT = 0x8D94 + GREEN_INTEGER = 0x8D95 # VERSION_3_0 + GREEN_INTEGER_EXT = 0x8D95 + BLUE_INTEGER = 0x8D96 # VERSION_3_0 + BLUE_INTEGER_EXT = 0x8D96 + ALPHA_INTEGER = 0x8D97 # VERSION_3_0 + ALPHA_INTEGER_EXT = 0x8D97 + RGB_INTEGER = 0x8D98 # VERSION_3_0 + RGB_INTEGER_EXT = 0x8D98 + RGBA_INTEGER = 0x8D99 # VERSION_3_0 + RGBA_INTEGER_EXT = 0x8D99 + BGR_INTEGER = 0x8D9A # VERSION_3_0 + BGR_INTEGER_EXT = 0x8D9A + BGRA_INTEGER = 0x8D9B # VERSION_3_0 + BGRA_INTEGER_EXT = 0x8D9B + LUMINANCE_INTEGER_EXT = 0x8D9C + LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D + RGBA_INTEGER_MODE_EXT = 0x8D9E + +# NV_future_use: 0x8D9F + +NV_parameter_buffer_object enum: + MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0 + MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1 + VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2 + GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3 + FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4 + +NV_gpu_program4 enum: (additional; see above) + MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5 + MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6 + +VERSION_3_2 enum: + FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7 + FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8 + +ARB_geometry_shader4 enum: (additional; see below) + FRAMEBUFFER_ATTACHMENT_LAYERED_ARB = 0x8DA7 + FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB = 0x8DA8 + FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB = 0x8DA9 + +NV_geometry_program4 enum: (additional; see above) + FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7 + FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8 + FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9 + +# NV_future_use: 0x8DAA + +VERSION_3_0 enum: +ARB_depth_buffer_float enum: (additional; see above; some values different from NV; note: no ARB suffixes) + FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD + +NV_depth_buffer_float enum: + DEPTH_COMPONENT32F_NV = 0x8DAB + DEPTH32F_STENCIL8_NV = 0x8DAC + FLOAT_32_UNSIGNED_INT_24_8_REV_NV = 0x8DAD + DEPTH_BUFFER_FLOAT_MODE_NV = 0x8DAF + +# NV_future_use: 0x8DAE +# NV_future_use: 0x8DB0-0x8DB8 + +VERSION_3_0 enum: +ARB_framebuffer_sRGB enum: (note: no ARB suffixes) + FRAMEBUFFER_SRGB = 0x8DB9 # VERSION_3_0 / ARB_sRGB + +EXT_framebuffer_sRGB enum: + FRAMEBUFFER_SRGB_EXT = 0x8DB9 + FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA + +VERSION_3_0 enum: +ARB_texture_compression_rgtc enum: (note: no ARB suffixes) + COMPRESSED_RED_RGTC1 = 0x8DBB # VERSION_3_0 / ARB_tcrgtc + COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC # VERSION_3_0 / ARB_tcrgtc + COMPRESSED_RG_RGTC2 = 0x8DBD # VERSION_3_0 / ARB_tcrgtc + COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE # VERSION_3_0 / ARB_tcrgtc + +EXT_texture_compression_rgtc enum: + COMPRESSED_RED_RGTC1_EXT = 0x8DBB + COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC + COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD + COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE + +# NV_future_use: 0x8DBF + +VERSION_3_0 enum: + SAMPLER_1D_ARRAY = 0x8DC0 # VERSION_3_0 + SAMPLER_2D_ARRAY = 0x8DC1 # VERSION_3_0 + SAMPLER_1D_ARRAY_SHADOW = 0x8DC3 # VERSION_3_0 + SAMPLER_2D_ARRAY_SHADOW = 0x8DC4 # VERSION_3_0 + SAMPLER_CUBE_SHADOW = 0x8DC5 # VERSION_3_0 + UNSIGNED_INT_VEC2 = 0x8DC6 # VERSION_3_0 + UNSIGNED_INT_VEC3 = 0x8DC7 # VERSION_3_0 + UNSIGNED_INT_VEC4 = 0x8DC8 # VERSION_3_0 + INT_SAMPLER_1D = 0x8DC9 # VERSION_3_0 + INT_SAMPLER_2D = 0x8DCA # VERSION_3_0 + INT_SAMPLER_3D = 0x8DCB # VERSION_3_0 + INT_SAMPLER_CUBE = 0x8DCC # VERSION_3_0 + INT_SAMPLER_1D_ARRAY = 0x8DCE # VERSION_3_0 + INT_SAMPLER_2D_ARRAY = 0x8DCF # VERSION_3_0 + UNSIGNED_INT_SAMPLER_1D = 0x8DD1 # VERSION_3_0 + UNSIGNED_INT_SAMPLER_2D = 0x8DD2 # VERSION_3_0 + UNSIGNED_INT_SAMPLER_3D = 0x8DD3 # VERSION_3_0 + UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4 # VERSION_3_0 + UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6 # VERSION_3_0 + UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7 # VERSION_3_0 + +VERSION_3_1 enum: (Promoted from EXT_gpu_shader4 + ARB_texture_rectangle / ARB_uniform_buffer_object) + SAMPLER_BUFFER = 0x8DC2 # EXT_gpu_shader4 + ARB_texture_buffer_object + INT_SAMPLER_2D_RECT = 0x8DCD # EXT_gpu_shader4 + ARB_texture_rectangle + INT_SAMPLER_BUFFER = 0x8DD0 # EXT_gpu_shader4 + ARB_texture_buffer_object + UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5 # EXT_gpu_shader4 + ARB_texture_rectangle + UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8 # EXT_gpu_shader4 + ARB_texture_buffer_object + +EXT_gpu_shader4 enum: + SAMPLER_1D_ARRAY_EXT = 0x8DC0 + SAMPLER_2D_ARRAY_EXT = 0x8DC1 + SAMPLER_BUFFER_EXT = 0x8DC2 + SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3 + SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4 + SAMPLER_CUBE_SHADOW_EXT = 0x8DC5 + UNSIGNED_INT_VEC2_EXT = 0x8DC6 + UNSIGNED_INT_VEC3_EXT = 0x8DC7 + UNSIGNED_INT_VEC4_EXT = 0x8DC8 + INT_SAMPLER_1D_EXT = 0x8DC9 + INT_SAMPLER_2D_EXT = 0x8DCA + INT_SAMPLER_3D_EXT = 0x8DCB + INT_SAMPLER_CUBE_EXT = 0x8DCC + INT_SAMPLER_2D_RECT_EXT = 0x8DCD + INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE + INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF + INT_SAMPLER_BUFFER_EXT = 0x8DD0 + UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1 + UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2 + UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3 + UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4 + UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5 + UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6 + UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7 + UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8 + +VERSION_3_2 enum: + GEOMETRY_SHADER = 0x8DD9 + +ARB_geometry_shader4 enum: + GEOMETRY_SHADER_ARB = 0x8DD9 + +EXT_geometry_shader4 enum: + GEOMETRY_SHADER_EXT = 0x8DD9 + +ARB_geometry_shader4 enum: (additional; see above) + GEOMETRY_VERTICES_OUT_ARB = 0x8DDA + GEOMETRY_INPUT_TYPE_ARB = 0x8DDB + GEOMETRY_OUTPUT_TYPE_ARB = 0x8DDC + +NV_geometry_program4 enum: (additional; see above) + GEOMETRY_VERTICES_OUT_EXT = 0x8DDA + GEOMETRY_INPUT_TYPE_EXT = 0x8DDB + GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC + +ARB_geometry_shader4 enum: (additional; see above) + MAX_GEOMETRY_VARYING_COMPONENTS_ARB = 0x8DDD + MAX_VERTEX_VARYING_COMPONENTS_ARB = 0x8DDE + MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB = 0x8DDF + MAX_GEOMETRY_OUTPUT_VERTICES_ARB = 0x8DE0 + MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB = 0x8DE1 + +VERSION_3_2 enum: + MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF + MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0 + MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1 + +EXT_geometry_shader4 enum: (additional; see above) + MAX_GEOMETRY_VARYING_COMPONENTS_EXT = 0x8DDD + MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE + MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF + MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0 + MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1 + +EXT_bindable_uniform enum: + MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2 + MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = 0x8DE3 + MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = 0x8DE4 + +# NV_future_use: 0x8DE5-0x8DEC + +EXT_bindable_uniform enum: (additional; see above) + MAX_BINDABLE_UNIFORM_SIZE_EXT = 0x8DED + UNIFORM_BUFFER_EXT = 0x8DEE + UNIFORM_BUFFER_BINDING_EXT = 0x8DEF + +############################################################################### + +# Khronos OpenGL ES WG: 0x8DF0-0x8E0F + +# Khronos_future_use: 0x8DF0-0x8DF5 + +OES_vertex_type_10_10_10_2 enum: (OpenGL ES only) + UNSIGNED_INT_10_10_10_2_OES = 0x8DF6 + INT_10_10_10_2_OES = 0x8DF7 + +# Khronos_future_use: 0x8DF8-0x8E0F + +############################################################################### + +# NVIDIA: 0x8E10-0x8E8F +# Reserved per email from Michael Gold 2006/8/7 + +NV_framebuffer_multisample_coverage enum: + RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10 + MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11 + MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12 + +VERSION_3_0 enum: + QUERY_WAIT = 0x8E13 # VERSION_3_0 + QUERY_NO_WAIT = 0x8E14 # VERSION_3_0 + QUERY_BY_REGION_WAIT = 0x8E15 # VERSION_3_0 + QUERY_BY_REGION_NO_WAIT = 0x8E16 # VERSION_3_0 + +GL_NV_conditional_render enum: + QUERY_WAIT_NV = 0x8E13 + QUERY_NO_WAIT_NV = 0x8E14 + QUERY_BY_REGION_WAIT_NV = 0x8E15 + QUERY_BY_REGION_NO_WAIT_NV = 0x8E16 + +# NV_future_use: 0x8E17-0x8E21 + +NV_transform_feedback2 enum: + TRANSFORM_FEEDBACK_NV = 0x8E22 + TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23 + TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24 + TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25 + +NV_present_video enum: + FRAME_NV = 0x8E26 + FIELDS_NV = 0x8E27 + CURRENT_TIME_NV = 0x8E28 + NUM_FILL_STREAMS_NV = 0x8E29 + PRESENT_TIME_NV = 0x8E2A + PRESENT_DURATION_NV = 0x8E2B + +# NV_future_use: 0x8E2C + +EXT_direct_state_access enum: + PROGRAM_MATRIX_EXT = 0x8E2D + TRANSPOSE_PROGRAM_MATRIX_EXT = 0x8E2E + PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F + +# NV_future_use: 0x8E30-0x8E41 + +EXT_texture_swizzle enum: + TEXTURE_SWIZZLE_R_EXT = 0x8E42 + TEXTURE_SWIZZLE_G_EXT = 0x8E43 + TEXTURE_SWIZZLE_B_EXT = 0x8E44 + TEXTURE_SWIZZLE_A_EXT = 0x8E45 + TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46 + +# NV_future_use: 0x8E47-0x8E4B + +VERSION_3_2 enum: + use ARB_provoking_vertex QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION + use ARB_provoking_vertex FIRST_VERTEX_CONVENTION + use ARB_provoking_vertex LAST_VERTEX_CONVENTION + use ARB_provoking_vertex PROVOKING_VERTEX + +ARB_provoking_vertex enum: + QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C + FIRST_VERTEX_CONVENTION = 0x8E4D + LAST_VERTEX_CONVENTION = 0x8E4E + PROVOKING_VERTEX = 0x8E4F + +EXT_provoking_vertex enum: + QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C + FIRST_VERTEX_CONVENTION_EXT = 0x8E4D + LAST_VERTEX_CONVENTION_EXT = 0x8E4E + PROVOKING_VERTEX_EXT = 0x8E4F + +VERSION_3_2 enum: + use ARB_texture_multisample SAMPLE_POSITION + use ARB_texture_multisample SAMPLE_MASK + use ARB_texture_multisample SAMPLE_MASK_VALUE + use ARB_texture_multisample MAX_SAMPLE_MASK_WORDS + +ARB_texture_multisample enum: + SAMPLE_POSITION = 0x8E50 + SAMPLE_MASK = 0x8E51 + SAMPLE_MASK_VALUE = 0x8E52 + MAX_SAMPLE_MASK_WORDS = 0x8E59 + +NV_explicit_multisample enum: + SAMPLE_POSITION_NV = 0x8E50 + SAMPLE_MASK_NV = 0x8E51 + SAMPLE_MASK_VALUE_NV = 0x8E52 + TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53 + TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54 + TEXTURE_RENDERBUFFER_NV = 0x8E55 + SAMPLER_RENDERBUFFER_NV = 0x8E56 + INT_SAMPLER_RENDERBUFFER_NV = 0x8E57 + UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58 + MAX_SAMPLE_MASK_WORDS_NV = 0x8E59 + +# NV_future_use: 0x8E5A-0x8E5D + +ARB_texture_gather enum: + MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E + MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F + +# NV_future_use: 0x8E60-0x8E8F + +############################################################################### + +# QNX: 0x8E90-0x8E9F +# For GL_QNX_texture_tiling, GL_QNX_complex_polygon, GL_QNX_stippled_lines +# (Khronos bug 696) + +# QNX_future_use: 0x8E90-0x8E9F + +############################################################################### + +# Imagination Tech.: 0x8EA0-0x8EAF + +############################################################################### + +# Khronos OpenGL ES WG: 0x8EB0-0x8EBF +# Assigned for Affie Munshi on 2007/07/20 + +############################################################################### + +# Vincent: 0x8EC0-0x8ECF + +############################################################################### + +# NVIDIA: 0x8ED0-0x8F4F +# Assigned for Pat Brown (Khronos bug 3191) + +# NV_future_use: 0x8ED0-0x8F1C + +NV_shader_buffer_load enum: + BUFFER_GPU_ADDRESS_NV = 0x8F1D + +NV_vertex_buffer_unified_memory enum: + VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E + ELEMENT_ARRAY_UNIFIED_NV = 0x8F1F + VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20 + VERTEX_ARRAY_ADDRESS_NV = 0x8F21 + NORMAL_ARRAY_ADDRESS_NV = 0x8F22 + COLOR_ARRAY_ADDRESS_NV = 0x8F23 + INDEX_ARRAY_ADDRESS_NV = 0x8F24 + TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25 + EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26 + SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27 + FOG_COORD_ARRAY_ADDRESS_NV = 0x8F28 + ELEMENT_ARRAY_ADDRESS_NV = 0x8F29 + VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A + VERTEX_ARRAY_LENGTH_NV = 0x8F2B + NORMAL_ARRAY_LENGTH_NV = 0x8F2C + COLOR_ARRAY_LENGTH_NV = 0x8F2D + INDEX_ARRAY_LENGTH_NV = 0x8F2E + TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F + EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30 + SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31 + FOG_COORD_ARRAY_LENGTH_NV = 0x8F32 + ELEMENT_ARRAY_LENGTH_NV = 0x8F33 + +NV_shader_buffer_load enum: (additional; see above) + GPU_ADDRESS_NV = 0x8F34 + MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35 + +ARB_copy_buffer enum: + COPY_READ_BUFFER = 0x8F36 + COPY_WRITE_BUFFER = 0x8F37 + +VERSION_3_1 enum: + use ARB_copy_buffer COPY_READ_BUFFER + use ARB_copy_buffer COPY_WRITE_BUFFER + +# NVIDIA_future_use: 0x8F38-0x8F4F + +############################################################################### + +# 3Dlabs: 0x8F50-0x8F5F +# Assigned for Jon Kennedy (Khronos public bug 75) + +############################################################################### + +# ARM: 0x8F60-0x8F6F +# Assigned for Remi Pedersen (Khronos bug 3745) + +############################################################################### + +# HI Corp: 0x8F70-0x8F7F +# Assigned for Mark Callow (Khronos bug 4055) + +############################################################################### + +# Zebra Imaging: 0x8F80-0x8F8F +# Assigned for Mike Weiblen (Khronos public bug 91) + +############################################################################### + +# OpenGL ARB: 0x8F90-0x8F9F (SNORM textures, 3.1 primitive restart server state) + +VERSION_3_1 enum: + RED_SNORM = 0x8F90 # VERSION_3_1 + RG_SNORM = 0x8F91 # VERSION_3_1 + RGB_SNORM = 0x8F92 # VERSION_3_1 + RGBA_SNORM = 0x8F93 # VERSION_3_1 + R8_SNORM = 0x8F94 # VERSION_3_1 + RG8_SNORM = 0x8F95 # VERSION_3_1 + RGB8_SNORM = 0x8F96 # VERSION_3_1 + RGBA8_SNORM = 0x8F97 # VERSION_3_1 + R16_SNORM = 0x8F98 # VERSION_3_1 + RG16_SNORM = 0x8F99 # VERSION_3_1 + RGB16_SNORM = 0x8F9A # VERSION_3_1 + RGBA16_SNORM = 0x8F9B # VERSION_3_1 + SIGNED_NORMALIZED = 0x8F9C # VERSION_3_1 + PRIMITIVE_RESTART = 0x8F9D # Different from NV_primitive_restart value + PRIMITIVE_RESTART_INDEX = 0x8F9E # Different from NV_primitive_restart value + +ARB_texture_gather enum: (additional; see above) + MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS = 0x8F9F + +############################################################################### + +# Qualcomm: 0x8FA0-0x8FBF +# Assigned for Maurice Ribble (Khronos bug 4512) + +QCOM_driver_control enum: (OpenGL ES only) + PERFMON_GLOBAL_MODE_QCOM = 0x8FA0 + +# QCOM_future_use: 0x8FA1-0x8FBF + +############################################################################### + +# Vivante: 0x8FC0-0x8FDF +# Assigned for Frido Garritsen (Khronos bug 4526) + +############################################################################### + +# NVIDIA: 0x8FE0-0x8FFF +# Assigned for Pat Brown (Khronos bug 4935) + +# NV_future_use: 0x8FE0-0x8FFF + +############################################################################### + +# AMD: 0x9000-0x901F +# Assigned for Bill Licea-Kane + +AMD_vertex_shader_tesselator enum: + SAMPLER_BUFFER_AMD = 0x9001 + INT_SAMPLER_BUFFER_AMD = 0x9002 + UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003 + TESSELLATION_MODE_AMD = 0x9004 + TESSELLATION_FACTOR_AMD = 0x9005 + DISCRETE_AMD = 0x9006 + CONTINUOUS_AMD = 0x9007 + +ARB_texture_cube_map_array enum: + TEXTURE_CUBE_MAP_ARRAY = 0x9009 + TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A + PROXY_TEXTURE_CUBE_MAP_ARRAY = 0x900B + SAMPLER_CUBE_MAP_ARRAY = 0x900C + SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D + INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E + UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F + +# AMD_future_use: 0x9008-0x900F + +EXT_texture_snorm enum: + ALPHA_SNORM = 0x9010 + LUMINANCE_SNORM = 0x9011 + LUMINANCE_ALPHA_SNORM = 0x9012 + INTENSITY_SNORM = 0x9013 + ALPHA8_SNORM = 0x9014 + LUMINANCE8_SNORM = 0x9015 + LUMINANCE8_ALPHA8_SNORM = 0x9016 + INTENSITY8_SNORM = 0x9017 + ALPHA16_SNORM = 0x9018 + LUMINANCE16_SNORM = 0x9019 + LUMINANCE16_ALPHA16_SNORM = 0x901A + INTENSITY16_SNORM = 0x901B + +# AMD_future_use: 0x901C-0x901F + +############################################################################### + +# NVIDIA: 0x9020-0x90FF +# Assigned for Pat Brown (Khronos bug 4935) + +NV_video_capture enum: + VIDEO_BUFFER_NV = 0x9020 + VIDEO_BUFFER_BINDING_NV = 0x9021 + FIELD_UPPER_NV = 0x9022 + FIELD_LOWER_NV = 0x9023 + NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024 + NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = 0x9025 + VIDEO_CAPTURE_TO_422_SUPPORTED_NV = 0x9026 + LAST_VIDEO_CAPTURE_STATUS_NV = 0x9027 + VIDEO_BUFFER_PITCH_NV = 0x9028 + VIDEO_COLOR_CONVERSION_MATRIX_NV = 0x9029 + VIDEO_COLOR_CONVERSION_MAX_NV = 0x902A + VIDEO_COLOR_CONVERSION_MIN_NV = 0x902B + VIDEO_COLOR_CONVERSION_OFFSET_NV = 0x902C + VIDEO_BUFFER_INTERNAL_FORMAT_NV = 0x902D + PARTIAL_SUCCESS_NV = 0x902E + SUCCESS_NV = 0x902F + FAILURE_NV = 0x9030 + YCBYCR8_422_NV = 0x9031 + YCBAYCR8A_4224_NV = 0x9032 + Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = 0x9033 + Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = 0x9034 + Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = 0x9035 + Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = 0x9036 + Z4Y12Z4CB12Z4CR12_444_NV = 0x9037 + VIDEO_CAPTURE_FRAME_WIDTH_NV = 0x9038 + VIDEO_CAPTURE_FRAME_HEIGHT_NV = 0x9039 + VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = 0x903A + VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = 0x903B + VIDEO_CAPTURE_SURFACE_ORIGIN_NV = 0x903C + +# NV_future_use: 0x903D-0x90FF + +############################################################################### + +# OpenGL ARB: 0x9100-0x912F + +VERSION_3_2 enum: + use ARB_texture_multisample TEXTURE_2D_MULTISAMPLE + use ARB_texture_multisample PROXY_TEXTURE_2D_MULTISAMPLE + use ARB_texture_multisample TEXTURE_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample TEXTURE_BINDING_2D_MULTISAMPLE + use ARB_texture_multisample TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample TEXTURE_SAMPLES + use ARB_texture_multisample TEXTURE_FIXED_SAMPLE_LOCATIONS + use ARB_texture_multisample SAMPLER_2D_MULTISAMPLE + use ARB_texture_multisample INT_SAMPLER_2D_MULTISAMPLE + use ARB_texture_multisample UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE + use ARB_texture_multisample SAMPLER_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample INT_SAMPLER_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY + use ARB_texture_multisample MAX_COLOR_TEXTURE_SAMPLES + use ARB_texture_multisample MAX_DEPTH_TEXTURE_SAMPLES + use ARB_texture_multisample MAX_INTEGER_SAMPLES + +ARB_texture_multisample enum: + TEXTURE_2D_MULTISAMPLE = 0x9100 + PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101 + TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102 + PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103 + TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104 + TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105 + TEXTURE_SAMPLES = 0x9106 + TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107 + SAMPLER_2D_MULTISAMPLE = 0x9108 + INT_SAMPLER_2D_MULTISAMPLE = 0x9109 + UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A + SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B + INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C + UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D + MAX_COLOR_TEXTURE_SAMPLES = 0x910E + MAX_DEPTH_TEXTURE_SAMPLES = 0x910F + MAX_INTEGER_SAMPLES = 0x9110 + +VERSION_3_2 enum: + use ARB_sync MAX_SERVER_WAIT_TIMEOUT + use ARB_sync OBJECT_TYPE + use ARB_sync SYNC_CONDITION + use ARB_sync SYNC_STATUS + use ARB_sync SYNC_FLAGS + use ARB_sync SYNC_FENCE + use ARB_sync SYNC_GPU_COMMANDS_COMPLETE + use ARB_sync UNSIGNALED + use ARB_sync SIGNALED + use ARB_sync ALREADY_SIGNALED + use ARB_sync TIMEOUT_EXPIRED + use ARB_sync CONDITION_SATISFIED + use ARB_sync WAIT_FAILED + use ARB_sync TIMEOUT_IGNORED + use ARB_sync SYNC_FLUSH_COMMANDS_BIT + use ARB_sync TIMEOUT_IGNORED + +ARB_sync enum: + MAX_SERVER_WAIT_TIMEOUT = 0x9111 + OBJECT_TYPE = 0x9112 + SYNC_CONDITION = 0x9113 + SYNC_STATUS = 0x9114 + SYNC_FLAGS = 0x9115 + SYNC_FENCE = 0x9116 + SYNC_GPU_COMMANDS_COMPLETE = 0x9117 + UNSIGNALED = 0x9118 + SIGNALED = 0x9119 + ALREADY_SIGNALED = 0x911A + TIMEOUT_EXPIRED = 0x911B + CONDITION_SATISFIED = 0x911C + WAIT_FAILED = 0x911D + SYNC_FLUSH_COMMANDS_BIT = 0x00000001 + TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFull + +VERSION_3_0 enum: + BUFFER_ACCESS_FLAGS = 0x911F + BUFFER_MAP_LENGTH = 0x9120 + BUFFER_MAP_OFFSET = 0x9121 + +VERSION_3_2 enum: + MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122 + MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123 + MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124 + MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125 + +VERSION_3_2 enum: + CONTEXT_CORE_PROFILE_BIT = 0x00000001 + CONTEXT_COMPATIBILITY_PROFILE_BIT = 0x00000002 + CONTEXT_PROFILE_MASK = 0x9126 + +# ARB_future_use: 0x9127-0x912F + +############################################################################### +### Please remember that new enumerant allocations must be obtained by request +### to the Khronos API registrar (see comments at the top of this file) +### File requests in the Khronos Bugzilla, OpenGL project, Registry component. +############################################################################### + +# Any_vendor_future_use: 0x9130-0xFFFF +# +# This range must be the last range in the file. To generate a new +# range, allocate multiples of 16 from the beginning of the +# Any_vendor_future_use range and update enum.spec + +# (NOTE: first fill the gap from 0x8FE0-0x8FFF before proceeding here) + +############################################################################### + +# ARB: 100000-100999 (GLU enumerants only) +# ARB: 101000-101999 (Conformance tests only) + +############################################################################### + +# IBM: 103000-103999 +# CULL_VERTEX_IBM = 103050 +# VERTEX_ARRAY_LIST_IBM = 103070 +# NORMAL_ARRAY_LIST_IBM = 103071 +# COLOR_ARRAY_LIST_IBM = 103072 +# INDEX_ARRAY_LIST_IBM = 103073 +# TEXTURE_COORD_ARRAY_LIST_IBM = 103074 +# EDGE_FLAG_ARRAY_LIST_IBM = 103075 +# FOG_COORDINATE_ARRAY_LIST_IBM = 103076 +# SECONDARY_COLOR_ARRAY_LIST_IBM = 103077 +# VERTEX_ARRAY_LIST_STRIDE_IBM = 103080 +# NORMAL_ARRAY_LIST_STRIDE_IBM = 103081 +# COLOR_ARRAY_LIST_STRIDE_IBM = 103082 +# INDEX_ARRAY_LIST_STRIDE_IBM = 103083 +# TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 103084 +# EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 103085 +# FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086 +# SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 103087 + +############################################################################### + +# NEC: 104000-104999 +# Compaq: 105000-105999 (Compaq was acquired by HP) +# KPC: 106000-106999 (Kubota is out of business) +# PGI: 107000-107999 (Portable was acquired by Template Graphics) +# E&S: 108000-108999 + +###############################################################################