gl4java.awt
Class GLAnimCanvas

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Canvas
              |
              +--gl4java.awt.GLCanvas
                    |
                    +--gl4java.awt.GLAnimCanvas
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ComponentListener, java.util.EventListener, GLDrawable, GLEnum, GLRunnable, GLUEnum, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.event.MouseListener, java.lang.Runnable, java.io.Serializable, java.awt.event.WindowListener

public class GLAnimCanvas
extends GLCanvas
implements GLRunnable

This is meant as an base class writing Animations. A clean usage of multi-threading compatible with JAVA2 is implemented here !

If you are interessting in further Documentation and/or the history of GL4Java follow the following link.

The GL4Java Documentation
 

There are two ways of using a GLAnimCanvas: the GLEventListener model or the subclassing model. Earlier versions of OpenGL for Java only supported the subclassing model. The default implementations of GLCanvas.init(), GLCanvas.display(), GLCanvas.reshape(int, int) and # GLCanvas.doCleanup() now send events to GLEventListeners; they can still be overridden as before to support the subclassing model.

If using the subclassing model, you should override the following methods for your needs:

preInit - initialisation before creating GLContext
init - 1st initialisation
doCleanup - OGL cleanup prior to context deletion
display - render one frame
reshape - to reshape (window resize)
ReInit - ReInitialisation after stop for setSuspended(false)
 

This code uses repaint() to fire a sDisplay call by the AWT-Event thread ! and sleep to suspend for a given Frames per secounds value as default !! To switch this behavior for a better performance, and responsiveness so that sDisplay is called by the animation thread itself call:

setUseRepaint(false)
 

This code sleep's for a given Frames per secounds after each frame as default !! To switch this behavior for a better performance, so that much frames are rendered as the machine can do ! call:

setUseFpsSleep(false)
 

But be sure, that the other threads may not have enough time or i may not get the cpu power ... The following settings for setUseRepaint and setUseFpsSleep looks fine:

A JVM with operating system threads has: native-threads

A JVM where all JVM threads runs in one operating-system-thread has: green-threads
green-threadsnative-threads
setUseRepaint true true & false
setUseFpsSleep true true & false

If you play with setUseRepaint or setUseFpsSleep, be shure to have a Java VM with native-thread support, because a GL-Context can be shared by many threads, but one thread can have just one GL-Context !

Since GL4Java 2.5.2 and using a JVM >= 1.3 the multithreading support is stable !

(comments welcome)

To use real fps settings, the following functions provides you to do so:

setAnimateFps
getMaxFps
 
Like the first animation run, this class renders a view frames (default 10) to subtract the render time from the sleep time !

Version:
2.0, 21. April 1999
Author:
Sven Goethel
See Also:
GLCanvas, Serialized Form

Inner classes inherited from class java.awt.Canvas
java.awt.Canvas.AccessibleAWTCanvas
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent
 
Field Summary
protected  long dFpsMilli
          the delays ..
protected  boolean forceGLFree
           
protected  double FramesPerSec
          To support frames per scounds, instead of killing the machine :-) A little GUI is supported !
protected static int globalThreadNumber
           
protected  boolean isRunning
           
protected  java.lang.Thread killme
          The thread for referencing Thread (Animation)
protected  long mSecPerFrame
           
protected  boolean shallWeRender
           
protected  boolean threadSuspended
          Instead of using suspend (JAVA2)
protected  boolean useFpsSleep
           
protected  boolean useRepaint
           
protected  boolean useYield
           
 
Fields inherited from class gl4java.awt.GLCanvas
_f_dur, accumSize, capabilities, createOwnWindow, doubleBuffer, gl, glj, glu, isInit, mustResize, needCvsDispose, rgba, sharedGLContext, size, stencilBits, stereoView, topLevelWindow
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface gl4java.GLEnum
GL_1PASS_EXT, GL_1PASS_SGIS, GL_2_BYTES, GL_2D, GL_2PASS_0_EXT, GL_2PASS_0_SGIS, GL_2PASS_1_EXT, GL_2PASS_1_SGIS, GL_2X_BIT_ATI, GL_3_BYTES, GL_3D, GL_3D_COLOR, GL_3D_COLOR_TEXTURE, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_4_BYTES, GL_422_AVERAGE_EXT, GL_422_EXT, GL_422_REV_AVERAGE_EXT, GL_422_REV_EXT, GL_4D_COLOR_TEXTURE, GL_4PASS_0_EXT, GL_4PASS_0_SGIS, GL_4PASS_1_EXT, GL_4PASS_1_SGIS, GL_4PASS_2_EXT, GL_4PASS_2_SGIS, GL_4PASS_3_EXT, GL_4PASS_3_SGIS, GL_4X_BIT_ATI, GL_8X_BIT_ATI, GL_ABGR_EXT, GL_ACCUM, GL_ACCUM_ALPHA_BITS, GL_ACCUM_BLUE_BITS, GL_ACCUM_BUFFER_BIT, GL_ACCUM_CLEAR_VALUE, GL_ACCUM_GREEN_BITS, GL_ACCUM_RED_BITS, GL_ACTIVE_TEXTURE, GL_ACTIVE_TEXTURE_ARB, GL_ACTIVE_VERTEX_UNITS_ARB, GL_ADD, GL_ADD_ATI, GL_ADD_SIGNED, GL_ADD_SIGNED_ARB, GL_ADD_SIGNED_EXT, GL_ALIASED_LINE_WIDTH_RANGE, GL_ALIASED_POINT_SIZE_RANGE, GL_ALL_ATTRIB_BITS, GL_ALL_CLIENT_ATTRIB_BITS, GL_ALL_COMPLETED_NV, GL_ALLOW_DRAW_FRG_HINT_PGI, GL_ALLOW_DRAW_MEM_HINT_PGI, GL_ALLOW_DRAW_OBJ_HINT_PGI, GL_ALLOW_DRAW_WIN_HINT_PGI, GL_ALPHA, GL_ALPHA_BIAS, GL_ALPHA_BITS, GL_ALPHA_MAX_CLAMP_INGR, GL_ALPHA_MAX_SGIX, GL_ALPHA_MIN_CLAMP_INGR, GL_ALPHA_MIN_SGIX, GL_ALPHA_SCALE, GL_ALPHA_TEST, GL_ALPHA_TEST_FUNC, GL_ALPHA_TEST_REF, GL_ALPHA12, GL_ALPHA12_EXT, GL_ALPHA16, GL_ALPHA16_EXT, GL_ALPHA4, GL_ALPHA4_EXT, GL_ALPHA8, GL_ALPHA8_EXT, GL_ALWAYS, GL_ALWAYS_FAST_HINT_PGI, GL_ALWAYS_SOFT_HINT_PGI, GL_AMBIENT, GL_AMBIENT_AND_DIFFUSE, GL_AND, GL_AND_INVERTED, GL_AND_REVERSE, GL_APPLE_specular_vector, GL_APPLE_transform_hint, GL_ARB_imaging, GL_ARB_matrix_palette, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_point_parameters, GL_ARB_texture_border_clamp, GL_ARB_texture_compression, GL_ARB_texture_cube_map, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_transpose_matrix, GL_ARB_vertex_blend, GL_ARRAY_ELEMENT_LOCK_COUNT_EXT, GL_ARRAY_ELEMENT_LOCK_FIRST_EXT, GL_ARRAY_OBJECT_BUFFER_ATI, GL_ARRAY_OBJECT_OFFSET_ATI, GL_ASYNC_DRAW_PIXELS_SGIX, GL_ASYNC_HISTOGRAM_SGIX, GL_ASYNC_MARKER_SGIX, GL_ASYNC_READ_PIXELS_SGIX, GL_ASYNC_TEX_IMAGE_SGIX, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_pn_triangles, GL_ATI_vertex_array_object, GL_ATI_vertex_streams, GL_ATTENUATION_EXT, GL_ATTRIB_ARRAY_POINTER_NV, GL_ATTRIB_ARRAY_SIZE_NV, GL_ATTRIB_ARRAY_STRIDE_NV, GL_ATTRIB_ARRAY_TYPE_NV, GL_ATTRIB_STACK_DEPTH, GL_AUTO_NORMAL, GL_AUX_BUFFERS, GL_AUX0, GL_AUX1, GL_AUX2, GL_AUX3, GL_AVERAGE_EXT, GL_AVERAGE_HP, GL_BACK, GL_BACK_LEFT, GL_BACK_NORMALS_HINT_PGI, GL_BACK_RIGHT, GL_BGR, GL_BGR_EXT, GL_BGRA, GL_BGRA_EXT, GL_BIAS_BIT_ATI, GL_BIAS_BY_NEGATIVE_ONE_HALF_NV, GL_BINORMAL_ARRAY_EXT, GL_BINORMAL_ARRAY_POINTER_EXT, GL_BINORMAL_ARRAY_STRIDE_EXT, GL_BINORMAL_ARRAY_TYPE_EXT, GL_BITMAP, GL_BITMAP_TOKEN, GL_BLEND, GL_BLEND_COLOR, GL_BLEND_COLOR_EXT, GL_BLEND_DST, GL_BLEND_DST_ALPHA_EXT, GL_BLEND_DST_RGB_EXT, GL_BLEND_EQUATION, GL_BLEND_EQUATION_EXT, GL_BLEND_SRC, GL_BLEND_SRC_ALPHA_EXT, GL_BLEND_SRC_RGB_EXT, GL_BLUE, GL_BLUE_BIAS, GL_BLUE_BIT_ATI, GL_BLUE_BITS, GL_BLUE_MAX_CLAMP_INGR, GL_BLUE_MIN_CLAMP_INGR, GL_BLUE_SCALE, GL_BUMP_ENVMAP_ATI, GL_BUMP_NUM_TEX_UNITS_ATI, GL_BUMP_ROT_MATRIX_ATI, GL_BUMP_ROT_MATRIX_SIZE_ATI, GL_BUMP_TARGET_ATI, GL_BUMP_TEX_UNITS_ATI, GL_BYTE, GL_C3F_V3F, GL_C4F_N3F_V3F, GL_C4UB_V2F, GL_C4UB_V3F, GL_CALLIGRAPHIC_FRAGMENT_SGIX, GL_CCW, GL_CLAMP, GL_CLAMP_TO_BORDER, GL_CLAMP_TO_BORDER_ARB, GL_CLAMP_TO_BORDER_SGIS, GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE_SGIS, GL_CLEAR, GL_CLIENT_ACTIVE_TEXTURE, GL_CLIENT_ACTIVE_TEXTURE_ARB, GL_CLIENT_ALL_ATTRIB_BITS, GL_CLIENT_ATTRIB_STACK_DEPTH, GL_CLIENT_PIXEL_STORE_BIT, GL_CLIENT_VERTEX_ARRAY_BIT, GL_CLIP_FAR_HINT_PGI, GL_CLIP_NEAR_HINT_PGI, GL_CLIP_PLANE0, GL_CLIP_PLANE1, GL_CLIP_PLANE2, GL_CLIP_PLANE3, GL_CLIP_PLANE4, GL_CLIP_PLANE5, GL_CLIP_VOLUME_CLIPPING_HINT_EXT, GL_CMYK_EXT, GL_CMYKA_EXT, GL_CND_ATI, GL_CND0_ATI, GL_COEFF, GL_COLOR, GL_COLOR_ALPHA_PAIRING_ATI, GL_COLOR_ARRAY, GL_COLOR_ARRAY_COUNT_EXT, GL_COLOR_ARRAY_EXT, GL_COLOR_ARRAY_LIST_IBM, GL_COLOR_ARRAY_LIST_STRIDE_IBM, GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL, GL_COLOR_ARRAY_POINTER, GL_COLOR_ARRAY_POINTER_EXT, GL_COLOR_ARRAY_SIZE, GL_COLOR_ARRAY_SIZE_EXT, GL_COLOR_ARRAY_STRIDE, GL_COLOR_ARRAY_STRIDE_EXT, GL_COLOR_ARRAY_TYPE, GL_COLOR_ARRAY_TYPE_EXT, GL_COLOR_BUFFER_BIT, GL_COLOR_CLEAR_VALUE, GL_COLOR_INDEX, GL_COLOR_INDEX1_EXT, GL_COLOR_INDEX12_EXT, GL_COLOR_INDEX16_EXT, GL_COLOR_INDEX2_EXT, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEXES, GL_COLOR_LOGIC_OP, GL_COLOR_MATERIAL, GL_COLOR_MATERIAL_FACE, GL_COLOR_MATERIAL_PARAMETER, GL_COLOR_MATRIX, GL_COLOR_MATRIX_SGI, GL_COLOR_MATRIX_STACK_DEPTH, GL_COLOR_MATRIX_STACK_DEPTH_SGI, GL_COLOR_SUM_CLAMP_NV, GL_COLOR_SUM_EXT, GL_COLOR_TABLE, GL_COLOR_TABLE_ALPHA_SIZE, GL_COLOR_TABLE_ALPHA_SIZE_EXT, GL_COLOR_TABLE_ALPHA_SIZE_SGI, GL_COLOR_TABLE_BIAS, GL_COLOR_TABLE_BIAS_SGI, GL_COLOR_TABLE_BLUE_SIZE, GL_COLOR_TABLE_BLUE_SIZE_EXT, GL_COLOR_TABLE_BLUE_SIZE_SGI, GL_COLOR_TABLE_FORMAT, GL_COLOR_TABLE_FORMAT_EXT, GL_COLOR_TABLE_FORMAT_SGI, GL_COLOR_TABLE_GREEN_SIZE, GL_COLOR_TABLE_GREEN_SIZE_EXT, GL_COLOR_TABLE_GREEN_SIZE_SGI, GL_COLOR_TABLE_INTENSITY_SIZE, GL_COLOR_TABLE_INTENSITY_SIZE_EXT, GL_COLOR_TABLE_INTENSITY_SIZE_SGI, GL_COLOR_TABLE_LUMINANCE_SIZE, GL_COLOR_TABLE_LUMINANCE_SIZE_EXT, GL_COLOR_TABLE_LUMINANCE_SIZE_SGI, GL_COLOR_TABLE_RED_SIZE, GL_COLOR_TABLE_RED_SIZE_EXT, GL_COLOR_TABLE_RED_SIZE_SGI, GL_COLOR_TABLE_SCALE, GL_COLOR_TABLE_SCALE_SGI, GL_COLOR_TABLE_SGI, GL_COLOR_TABLE_WIDTH, GL_COLOR_TABLE_WIDTH_EXT, GL_COLOR_TABLE_WIDTH_SGI, GL_COLOR_WRITEMASK, GL_COLOR3_BIT_PGI, GL_COLOR4_BIT_PGI, GL_COMBINE, GL_COMBINE_ALPHA, GL_COMBINE_ALPHA_ARB, GL_COMBINE_ALPHA_EXT, GL_COMBINE_ARB, GL_COMBINE_EXT, GL_COMBINE_RGB, GL_COMBINE_RGB_ARB, GL_COMBINE_RGB_EXT, GL_COMBINE4_NV, GL_COMBINER_AB_DOT_PRODUCT_NV, GL_COMBINER_AB_OUTPUT_NV, GL_COMBINER_BIAS_NV, GL_COMBINER_CD_DOT_PRODUCT_NV, GL_COMBINER_CD_OUTPUT_NV, GL_COMBINER_COMPONENT_USAGE_NV, GL_COMBINER_INPUT_NV, GL_COMBINER_MAPPING_NV, GL_COMBINER_MUX_SUM_NV, GL_COMBINER_SCALE_NV, GL_COMBINER_SUM_OUTPUT_NV, GL_COMBINER0_NV, GL_COMBINER1_NV, GL_COMBINER2_NV, GL_COMBINER3_NV, GL_COMBINER4_NV, GL_COMBINER5_NV, GL_COMBINER6_NV, GL_COMBINER7_NV, GL_COMP_BIT_ATI, GL_COMPILE, GL_COMPILE_AND_EXECUTE, GL_COMPRESSED_ALPHA, GL_COMPRESSED_ALPHA_ARB, GL_COMPRESSED_INTENSITY, GL_COMPRESSED_INTENSITY_ARB, GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, GL_COMPRESSED_LUMINANCE_ALPHA_ARB, GL_COMPRESSED_LUMINANCE_ARB, GL_COMPRESSED_RGB, GL_COMPRESSED_RGB_ARB, GL_COMPRESSED_RGB_FXT1_3DFX, GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA, GL_COMPRESSED_RGBA_ARB, GL_COMPRESSED_RGBA_FXT1_3DFX, GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_COMPRESSED_TEXTURE_FORMATS, GL_COMPRESSED_TEXTURE_FORMATS_ARB, GL_CON_0_ATI, GL_CON_1_ATI, GL_CON_10_ATI, GL_CON_11_ATI, GL_CON_12_ATI, GL_CON_13_ATI, GL_CON_14_ATI, GL_CON_15_ATI, GL_CON_16_ATI, GL_CON_17_ATI, GL_CON_18_ATI, GL_CON_19_ATI, GL_CON_2_ATI, GL_CON_20_ATI, GL_CON_21_ATI, GL_CON_22_ATI, GL_CON_23_ATI, GL_CON_24_ATI, GL_CON_25_ATI, GL_CON_26_ATI, GL_CON_27_ATI, GL_CON_28_ATI, GL_CON_29_ATI, GL_CON_3_ATI, GL_CON_30_ATI, GL_CON_31_ATI, GL_CON_4_ATI, GL_CON_5_ATI, GL_CON_6_ATI, GL_CON_7_ATI, GL_CON_8_ATI, GL_CON_9_ATI, GL_CONSERVE_MEMORY_HINT_PGI, GL_CONST_EYE_NV, GL_CONSTANT, GL_CONSTANT_ALPHA, GL_CONSTANT_ALPHA_EXT, GL_CONSTANT_ARB, GL_CONSTANT_ATTENUATION, GL_CONSTANT_BORDER, GL_CONSTANT_BORDER_HP, GL_CONSTANT_COLOR, GL_CONSTANT_COLOR_EXT, GL_CONSTANT_COLOR0_NV, GL_CONSTANT_COLOR1_NV, GL_CONSTANT_EXT, GL_CONVOLUTION_1D, GL_CONVOLUTION_1D_EXT, GL_CONVOLUTION_2D, GL_CONVOLUTION_2D_EXT, GL_CONVOLUTION_BORDER_COLOR, GL_CONVOLUTION_BORDER_COLOR_HP, GL_CONVOLUTION_BORDER_MODE, GL_CONVOLUTION_BORDER_MODE_EXT, GL_CONVOLUTION_FILTER_BIAS, GL_CONVOLUTION_FILTER_BIAS_EXT, GL_CONVOLUTION_FILTER_SCALE, GL_CONVOLUTION_FILTER_SCALE_EXT, GL_CONVOLUTION_FORMAT, GL_CONVOLUTION_FORMAT_EXT, GL_CONVOLUTION_HEIGHT, GL_CONVOLUTION_HEIGHT_EXT, GL_CONVOLUTION_HINT_SGIX, GL_CONVOLUTION_WIDTH, GL_CONVOLUTION_WIDTH_EXT, GL_COPY, GL_COPY_INVERTED, GL_COPY_PIXEL_TOKEN, GL_CUBIC_EXT, GL_CUBIC_HP, GL_CULL_FACE, GL_CULL_FACE_MODE, GL_CULL_FRAGMENT_NV, GL_CULL_MODES_NV, GL_CULL_VERTEX_EXT, GL_CULL_VERTEX_EYE_POSITION_EXT, GL_CULL_VERTEX_IBM, GL_CULL_VERTEX_OBJECT_POSITION_EXT, GL_CURRENT_ATTRIB_NV, GL_CURRENT_BINORMAL_EXT, GL_CURRENT_BIT, GL_CURRENT_COLOR, GL_CURRENT_FOG_COORDINATE_EXT, GL_CURRENT_INDEX, GL_CURRENT_MATRIX_INDEX_ARB, GL_CURRENT_MATRIX_NV, GL_CURRENT_MATRIX_STACK_DEPTH_NV, GL_CURRENT_NORMAL, GL_CURRENT_PALETTE_MATRIX_ARB, GL_CURRENT_RASTER_COLOR, GL_CURRENT_RASTER_DISTANCE, GL_CURRENT_RASTER_INDEX, GL_CURRENT_RASTER_NORMAL_SGIX, GL_CURRENT_RASTER_POSITION, GL_CURRENT_RASTER_POSITION_VALID, GL_CURRENT_RASTER_TEXTURE_COORDS, GL_CURRENT_SECONDARY_COLOR_EXT, GL_CURRENT_TANGENT_EXT, GL_CURRENT_TEXTURE_COORDS, GL_CURRENT_VERTEX_EXT, GL_CURRENT_VERTEX_WEIGHT_EXT, GL_CURRENT_WEIGHT_ARB, GL_CW, GL_DECAL, GL_DECR, GL_DECR_WRAP_EXT, GL_DEFORMATIONS_MASK_SGIX, GL_DEPENDENT_AR_TEXTURE_2D_NV, GL_DEPENDENT_GB_TEXTURE_2D_NV, GL_DEPTH, GL_DEPTH_BIAS, GL_DEPTH_BITS, GL_DEPTH_BUFFER_BIT, GL_DEPTH_CLEAR_VALUE, GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16_SGIX, GL_DEPTH_COMPONENT24_SGIX, GL_DEPTH_COMPONENT32_SGIX, GL_DEPTH_FUNC, GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX, GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX, GL_DEPTH_PASS_INSTRUMENT_SGIX, GL_DEPTH_RANGE, GL_DEPTH_SCALE, GL_DEPTH_STENCIL_MESA, GL_DEPTH_STENCIL_NV, GL_DEPTH_STENCIL_TO_BGRA_NV, GL_DEPTH_STENCIL_TO_RGBA_NV, GL_DEPTH_TEST, GL_DEPTH_WRITEMASK, GL_DETAIL_TEXTURE_2D_BINDING_SGIS, GL_DETAIL_TEXTURE_2D_SGIS, GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS, GL_DETAIL_TEXTURE_LEVEL_SGIS, GL_DETAIL_TEXTURE_MODE_SGIS, GL_DIFFUSE, GL_DISCARD_ATI, GL_DISCARD_NV, GL_DISTANCE_ATTENUATION_EXT, GL_DISTANCE_ATTENUATION_SGIS, GL_DITHER, GL_DOMAIN, GL_DONT_CARE, GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV, GL_DOT_PRODUCT_DEPTH_REPLACE_NV, GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV, GL_DOT_PRODUCT_NV, GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV, GL_DOT_PRODUCT_TEXTURE_2D_NV, GL_DOT_PRODUCT_TEXTURE_3D_NV, GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV, GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV, GL_DOT2_ADD_ATI, GL_DOT3_ATI, GL_DOT3_RGB, GL_DOT3_RGB_ARB, GL_DOT3_RGB_EXT, GL_DOT3_RGBA, GL_DOT3_RGBA_ARB, GL_DOT3_RGBA_EXT, GL_DOT4_ATI, GL_DOUBLE, GL_DOUBLEBUFFER, GL_DRAW_BUFFER, GL_DRAW_PIXEL_TOKEN, GL_DS_BIAS_NV, GL_DS_SCALE_NV, GL_DSDT_MAG_INTENSITY_NV, GL_DSDT_MAG_NV, GL_DSDT_MAG_VIB_NV, GL_DSDT_NV, GL_DSDT8_MAG8_INTENSITY8_NV, GL_DSDT8_MAG8_NV, GL_DSDT8_NV, GL_DST_ALPHA, GL_DST_COLOR, GL_DT_BIAS_NV, GL_DT_SCALE_NV, GL_DU8DV8_ATI, GL_DUAL_ALPHA12_SGIS, GL_DUAL_ALPHA16_SGIS, GL_DUAL_ALPHA4_SGIS, GL_DUAL_ALPHA8_SGIS, GL_DUAL_INTENSITY12_SGIS, GL_DUAL_INTENSITY16_SGIS, GL_DUAL_INTENSITY4_SGIS, GL_DUAL_INTENSITY8_SGIS, GL_DUAL_LUMINANCE_ALPHA4_SGIS, GL_DUAL_LUMINANCE_ALPHA8_SGIS, GL_DUAL_LUMINANCE12_SGIS, GL_DUAL_LUMINANCE16_SGIS, GL_DUAL_LUMINANCE4_SGIS, GL_DUAL_LUMINANCE8_SGIS, GL_DUAL_TEXTURE_SELECT_SGIS, GL_DUDV_ATI, GL_DYNAMIC_ATI, GL_E_TIMES_F_NV, GL_EDGE_FLAG, GL_EDGE_FLAG_ARRAY, GL_EDGE_FLAG_ARRAY_COUNT_EXT, GL_EDGE_FLAG_ARRAY_EXT, GL_EDGE_FLAG_ARRAY_LIST_IBM, GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM, GL_EDGE_FLAG_ARRAY_POINTER, GL_EDGE_FLAG_ARRAY_POINTER_EXT, GL_EDGE_FLAG_ARRAY_STRIDE, GL_EDGE_FLAG_ARRAY_STRIDE_EXT, GL_EDGEFLAG_BIT_PGI, GL_EIGHTH_BIT_ATI, GL_EMBOSS_CONSTANT_NV, GL_EMBOSS_LIGHT_NV, GL_EMBOSS_MAP_NV, GL_EMISSION, GL_ENABLE_BIT, GL_EQUAL, GL_EQUIV, GL_EVAL_2D_NV, GL_EVAL_BIT, GL_EVAL_FRACTIONAL_TESSELLATION_NV, GL_EVAL_TRIANGULAR_2D_NV, GL_EVAL_VERTEX_ATTRIB0_NV, GL_EVAL_VERTEX_ATTRIB1_NV, GL_EVAL_VERTEX_ATTRIB10_NV, GL_EVAL_VERTEX_ATTRIB11_NV, GL_EVAL_VERTEX_ATTRIB12_NV, GL_EVAL_VERTEX_ATTRIB13_NV, GL_EVAL_VERTEX_ATTRIB14_NV, GL_EVAL_VERTEX_ATTRIB15_NV, GL_EVAL_VERTEX_ATTRIB2_NV, GL_EVAL_VERTEX_ATTRIB3_NV, GL_EVAL_VERTEX_ATTRIB4_NV, GL_EVAL_VERTEX_ATTRIB5_NV, GL_EVAL_VERTEX_ATTRIB6_NV, GL_EVAL_VERTEX_ATTRIB7_NV, GL_EVAL_VERTEX_ATTRIB8_NV, GL_EVAL_VERTEX_ATTRIB9_NV, GL_EXP, GL_EXP2, GL_EXPAND_NEGATE_NV, GL_EXPAND_NORMAL_NV, GL_EXT_422_pixels, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_matrix, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_separate_specular_color, GL_EXT_shared_texture_palette, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture3D, GL_EXT_vertex_array, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXTENSIONS, GL_EYE_DISTANCE_TO_LINE_SGIS, GL_EYE_DISTANCE_TO_POINT_SGIS, GL_EYE_LINE_SGIS, GL_EYE_LINEAR, GL_EYE_PLANE, GL_EYE_PLANE_ABSOLUTE_NV, GL_EYE_POINT_SGIS, GL_EYE_RADIAL_NV, GL_FALSE, GL_FASTEST, GL_FEEDBACK, GL_FEEDBACK_BUFFER_POINTER, GL_FEEDBACK_BUFFER_SIZE, GL_FEEDBACK_BUFFER_TYPE, GL_FENCE_CONDITION_NV, GL_FENCE_STATUS_NV, GL_FILL, GL_FILTER4_SGIS, GL_FLAT, GL_FLOAT, GL_FOG, GL_FOG_BIT, GL_FOG_COLOR, GL_FOG_COORDINATE_ARRAY_EXT, GL_FOG_COORDINATE_ARRAY_LIST_IBM, GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM, GL_FOG_COORDINATE_ARRAY_POINTER_EXT, GL_FOG_COORDINATE_ARRAY_STRIDE_EXT, GL_FOG_COORDINATE_ARRAY_TYPE_EXT, GL_FOG_COORDINATE_EXT, GL_FOG_COORDINATE_SOURCE_EXT, GL_FOG_DENSITY, GL_FOG_DISTANCE_MODE_NV, GL_FOG_END, GL_FOG_FUNC_POINTS_SGIS, GL_FOG_FUNC_SGIS, GL_FOG_HINT, GL_FOG_INDEX, GL_FOG_MODE, GL_FOG_OFFSET_SGIX, GL_FOG_OFFSET_VALUE_SGIX, GL_FOG_SCALE_SGIX, GL_FOG_SCALE_VALUE_SGIX, GL_FOG_SPECULAR_TEXTURE_WIN, GL_FOG_START, GL_FORMAT_SUBSAMPLE_24_24_OML, GL_FORMAT_SUBSAMPLE_244_244_OML, GL_FRAGMENT_COLOR_EXT, GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX, GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX, GL_FRAGMENT_COLOR_MATERIAL_SGIX, GL_FRAGMENT_DEPTH_EXT, GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX, GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX, GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX, GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX, GL_FRAGMENT_LIGHT0_SGIX, GL_FRAGMENT_LIGHT1_SGIX, GL_FRAGMENT_LIGHT2_SGIX, GL_FRAGMENT_LIGHT3_SGIX, GL_FRAGMENT_LIGHT4_SGIX, GL_FRAGMENT_LIGHT5_SGIX, GL_FRAGMENT_LIGHT6_SGIX, GL_FRAGMENT_LIGHT7_SGIX, GL_FRAGMENT_LIGHTING_SGIX, GL_FRAGMENT_MATERIAL_EXT, GL_FRAGMENT_NORMAL_EXT, GL_FRAGMENT_SHADER_ATI, GL_FRAMEZOOM_FACTOR_SGIX, GL_FRAMEZOOM_SGIX, GL_FRONT, GL_FRONT_AND_BACK, GL_FRONT_FACE, GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_FULL_RANGE_EXT, GL_FULL_STIPPLE_HINT_PGI, GL_FUNC_ADD, GL_FUNC_ADD_EXT, GL_FUNC_REVERSE_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT_EXT, GL_FUNC_SUBTRACT, GL_FUNC_SUBTRACT_EXT, GL_GENERATE_MIPMAP_HINT_SGIS, GL_GENERATE_MIPMAP_SGIS, GL_GEOMETRY_DEFORMATION_BIT_SGIX, GL_GEOMETRY_DEFORMATION_SGIX, GL_GEQUAL, GL_GLEXT_VERSION, GL_GLOBAL_ALPHA_FACTOR_SUN, GL_GLOBAL_ALPHA_SUN, GL_GREATER, GL_GREEN, GL_GREEN_BIAS, GL_GREEN_BIT_ATI, GL_GREEN_BITS, GL_GREEN_MAX_CLAMP_INGR, GL_GREEN_MIN_CLAMP_INGR, GL_GREEN_SCALE, GL_HALF_BIAS_NEGATE_NV, GL_HALF_BIAS_NORMAL_NV, GL_HALF_BIT_ATI, GL_HI_BIAS_NV, GL_HI_SCALE_NV, GL_HILO_NV, GL_HILO16_NV, GL_HINT_BIT, GL_HISTOGRAM, GL_HISTOGRAM_ALPHA_SIZE, GL_HISTOGRAM_ALPHA_SIZE_EXT, GL_HISTOGRAM_BLUE_SIZE, GL_HISTOGRAM_BLUE_SIZE_EXT, GL_HISTOGRAM_EXT, GL_HISTOGRAM_FORMAT, GL_HISTOGRAM_FORMAT_EXT, GL_HISTOGRAM_GREEN_SIZE, GL_HISTOGRAM_GREEN_SIZE_EXT, GL_HISTOGRAM_LUMINANCE_SIZE, GL_HISTOGRAM_LUMINANCE_SIZE_EXT, GL_HISTOGRAM_RED_SIZE, GL_HISTOGRAM_RED_SIZE_EXT, GL_HISTOGRAM_SINK, GL_HISTOGRAM_SINK_EXT, GL_HISTOGRAM_WIDTH, GL_HISTOGRAM_WIDTH_EXT, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_vertex_array_lists, GL_IDENTITY_NV, GL_IGNORE_BORDER, GL_IGNORE_BORDER_HP, GL_IMAGE_CUBIC_WEIGHT_HP, GL_IMAGE_MAG_FILTER_HP, GL_IMAGE_MIN_FILTER_HP, GL_IMAGE_ROTATE_ANGLE_HP, GL_IMAGE_ROTATE_ORIGIN_X_HP, GL_IMAGE_ROTATE_ORIGIN_Y_HP, GL_IMAGE_SCALE_X_HP, GL_IMAGE_SCALE_Y_HP, GL_IMAGE_TRANSFORM_2D_HP, GL_IMAGE_TRANSLATE_X_HP, GL_IMAGE_TRANSLATE_Y_HP, GL_INCR, GL_INCR_WRAP_EXT, GL_INDEX_ARRAY, GL_INDEX_ARRAY_COUNT_EXT, GL_INDEX_ARRAY_EXT, GL_INDEX_ARRAY_LIST_IBM, GL_INDEX_ARRAY_LIST_STRIDE_IBM, GL_INDEX_ARRAY_POINTER, GL_INDEX_ARRAY_POINTER_EXT, GL_INDEX_ARRAY_STRIDE, GL_INDEX_ARRAY_STRIDE_EXT, GL_INDEX_ARRAY_TYPE, GL_INDEX_ARRAY_TYPE_EXT, GL_INDEX_BIT_PGI, GL_INDEX_BITS, GL_INDEX_CLEAR_VALUE, GL_INDEX_LOGIC_OP, GL_INDEX_MATERIAL_EXT, GL_INDEX_MATERIAL_FACE_EXT, GL_INDEX_MATERIAL_PARAMETER_EXT, GL_INDEX_MODE, GL_INDEX_OFFSET, GL_INDEX_SHIFT, GL_INDEX_TEST_EXT, GL_INDEX_TEST_FUNC_EXT, GL_INDEX_TEST_REF_EXT, GL_INDEX_WRITEMASK, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INSTRUMENT_BUFFER_POINTER_SGIX, GL_INSTRUMENT_MEASUREMENTS_SGIX, GL_INT, GL_INTEL_parallel_arrays, GL_INTENSITY, GL_INTENSITY_EXT, GL_INTENSITY12, GL_INTENSITY12_EXT, GL_INTENSITY16, GL_INTENSITY16_EXT, GL_INTENSITY4, GL_INTENSITY4_EXT, GL_INTENSITY8, GL_INTENSITY8_EXT, GL_INTERLACE_OML, GL_INTERLACE_READ_INGR, GL_INTERLACE_READ_OML, GL_INTERLACE_SGIX, GL_INTERPOLATE, GL_INTERPOLATE_ARB, GL_INTERPOLATE_EXT, GL_INVALID_ENUM, GL_INVALID_OPERATION, GL_INVALID_VALUE, GL_INVARIANT_DATATYPE_EXT, GL_INVARIANT_EXT, GL_INVARIANT_VALUE_EXT, GL_INVERSE_NV, GL_INVERSE_TRANSPOSE_NV, GL_INVERT, GL_INVERTED_SCREEN_W_REND, GL_IR_INSTRUMENT1_SGIX, GL_IUI_N3F_V2F_EXT, GL_IUI_N3F_V3F_EXT, GL_IUI_V2F_EXT, GL_IUI_V3F_EXT, GL_KEEP, GL_LEFT, GL_LEQUAL, GL_LERP_ATI, GL_LESS, GL_LIGHT_ENV_MODE_SGIX, GL_LIGHT_MODEL_AMBIENT, GL_LIGHT_MODEL_COLOR_CONTROL, GL_LIGHT_MODEL_COLOR_CONTROL_EXT, GL_LIGHT_MODEL_LOCAL_VIEWER, GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE, GL_LIGHT_MODEL_TWO_SIDE, GL_LIGHT0, GL_LIGHT1, GL_LIGHT2, GL_LIGHT3, GL_LIGHT4, GL_LIGHT5, GL_LIGHT6, GL_LIGHT7, GL_LIGHTING, GL_LIGHTING_BIT, GL_LINE, GL_LINE_BIT, GL_LINE_LOOP, GL_LINE_RESET_TOKEN, GL_LINE_SMOOTH, GL_LINE_SMOOTH_HINT, GL_LINE_STIPPLE, GL_LINE_STIPPLE_PATTERN, GL_LINE_STIPPLE_REPEAT, GL_LINE_STRIP, GL_LINE_TOKEN, GL_LINE_WIDTH, GL_LINE_WIDTH_GRANULARITY, GL_LINE_WIDTH_RANGE, GL_LINEAR, GL_LINEAR_ATTENUATION, GL_LINEAR_CLIPMAP_LINEAR_SGIX, GL_LINEAR_CLIPMAP_NEAREST_SGIX, GL_LINEAR_DETAIL_ALPHA_SGIS, GL_LINEAR_DETAIL_COLOR_SGIS, GL_LINEAR_DETAIL_SGIS, GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR_MIPMAP_NEAREST, GL_LINEAR_SHARPEN_ALPHA_SGIS, GL_LINEAR_SHARPEN_COLOR_SGIS, GL_LINEAR_SHARPEN_SGIS, GL_LINES, GL_LIST_BASE, GL_LIST_BIT, GL_LIST_INDEX, GL_LIST_MODE, GL_LIST_PRIORITY_SGIX, GL_LO_BIAS_NV, GL_LO_SCALE_NV, GL_LOAD, GL_LOCAL_CONSTANT_DATATYPE_EXT, GL_LOCAL_CONSTANT_EXT, GL_LOCAL_CONSTANT_VALUE_EXT, GL_LOCAL_EXT, GL_LOGIC_OP, GL_LOGIC_OP_MODE, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_LUMINANCE12, GL_LUMINANCE12_ALPHA12, GL_LUMINANCE12_ALPHA12_EXT, GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA4_EXT, GL_LUMINANCE12_EXT, GL_LUMINANCE16, GL_LUMINANCE16_ALPHA16, GL_LUMINANCE16_ALPHA16_EXT, GL_LUMINANCE16_EXT, GL_LUMINANCE4, GL_LUMINANCE4_ALPHA4, GL_LUMINANCE4_ALPHA4_EXT, GL_LUMINANCE4_EXT, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE6_ALPHA2_EXT, GL_LUMINANCE8, GL_LUMINANCE8_ALPHA8, GL_LUMINANCE8_ALPHA8_EXT, GL_LUMINANCE8_EXT, GL_MAD_ATI, GL_MAGNITUDE_BIAS_NV, GL_MAGNITUDE_SCALE_NV, GL_MAP_ATTRIB_U_ORDER_NV, GL_MAP_ATTRIB_V_ORDER_NV, GL_MAP_COLOR, GL_MAP_STENCIL, GL_MAP_TESSELLATION_NV, GL_MAP1_BINORMAL_EXT, GL_MAP1_COLOR_4, GL_MAP1_GRID_DOMAIN, GL_MAP1_GRID_SEGMENTS, GL_MAP1_INDEX, GL_MAP1_NORMAL, GL_MAP1_TANGENT_EXT, GL_MAP1_TEXTURE_COORD_1, GL_MAP1_TEXTURE_COORD_2, GL_MAP1_TEXTURE_COORD_3, GL_MAP1_TEXTURE_COORD_4, GL_MAP1_VERTEX_3, GL_MAP1_VERTEX_4, GL_MAP1_VERTEX_ATTRIB0_4_NV, GL_MAP1_VERTEX_ATTRIB1_4_NV, GL_MAP1_VERTEX_ATTRIB10_4_NV, GL_MAP1_VERTEX_ATTRIB11_4_NV, GL_MAP1_VERTEX_ATTRIB12_4_NV, GL_MAP1_VERTEX_ATTRIB13_4_NV, GL_MAP1_VERTEX_ATTRIB14_4_NV, GL_MAP1_VERTEX_ATTRIB15_4_NV, GL_MAP1_VERTEX_ATTRIB2_4_NV, GL_MAP1_VERTEX_ATTRIB3_4_NV, GL_MAP1_VERTEX_ATTRIB4_4_NV, GL_MAP1_VERTEX_ATTRIB5_4_NV, GL_MAP1_VERTEX_ATTRIB6_4_NV, GL_MAP1_VERTEX_ATTRIB7_4_NV, GL_MAP1_VERTEX_ATTRIB8_4_NV, GL_MAP1_VERTEX_ATTRIB9_4_NV, GL_MAP2_BINORMAL_EXT, GL_MAP2_COLOR_4, GL_MAP2_GRID_DOMAIN, GL_MAP2_GRID_SEGMENTS, GL_MAP2_INDEX, GL_MAP2_NORMAL, GL_MAP2_TANGENT_EXT, GL_MAP2_TEXTURE_COORD_1, GL_MAP2_TEXTURE_COORD_2, GL_MAP2_TEXTURE_COORD_3, GL_MAP2_TEXTURE_COORD_4, GL_MAP2_VERTEX_3, GL_MAP2_VERTEX_4, GL_MAP2_VERTEX_ATTRIB0_4_NV, GL_MAP2_VERTEX_ATTRIB1_4_NV, GL_MAP2_VERTEX_ATTRIB10_4_NV, GL_MAP2_VERTEX_ATTRIB11_4_NV, GL_MAP2_VERTEX_ATTRIB12_4_NV, GL_MAP2_VERTEX_ATTRIB13_4_NV, GL_MAP2_VERTEX_ATTRIB14_4_NV, GL_MAP2_VERTEX_ATTRIB15_4_NV, GL_MAP2_VERTEX_ATTRIB2_4_NV, GL_MAP2_VERTEX_ATTRIB3_4_NV, GL_MAP2_VERTEX_ATTRIB4_4_NV, GL_MAP2_VERTEX_ATTRIB5_4_NV, GL_MAP2_VERTEX_ATTRIB6_4_NV, GL_MAP2_VERTEX_ATTRIB7_4_NV, GL_MAP2_VERTEX_ATTRIB8_4_NV, GL_MAP2_VERTEX_ATTRIB9_4_NV, GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI, GL_MAT_AMBIENT_BIT_PGI, GL_MAT_COLOR_INDEXES_BIT_PGI, GL_MAT_DIFFUSE_BIT_PGI, GL_MAT_EMISSION_BIT_PGI, GL_MAT_SHININESS_BIT_PGI, GL_MAT_SPECULAR_BIT_PGI, GL_MATERIAL_SIDE_HINT_PGI, GL_MATRIX_EXT, GL_MATRIX_INDEX_ARRAY_ARB, GL_MATRIX_INDEX_ARRAY_POINTER_ARB, GL_MATRIX_INDEX_ARRAY_SIZE_ARB, GL_MATRIX_INDEX_ARRAY_STRIDE_ARB, GL_MATRIX_INDEX_ARRAY_TYPE_ARB, GL_MATRIX_MODE, GL_MATRIX_PALETTE_ARB, GL_MATRIX0_NV, GL_MATRIX1_NV, GL_MATRIX2_NV, GL_MATRIX3_NV, GL_MATRIX4_NV, GL_MATRIX5_NV, GL_MATRIX6_NV, GL_MATRIX7_NV, GL_MAX, GL_MAX_3D_TEXTURE_SIZE, GL_MAX_3D_TEXTURE_SIZE_EXT, GL_MAX_4D_TEXTURE_SIZE_SGIS, GL_MAX_ACTIVE_LIGHTS_SGIX, GL_MAX_ASYNC_DRAW_PIXELS_SGIX, GL_MAX_ASYNC_HISTOGRAM_SGIX, GL_MAX_ASYNC_READ_PIXELS_SGIX, GL_MAX_ASYNC_TEX_IMAGE_SGIX, GL_MAX_ATTRIB_STACK_DEPTH, GL_MAX_CLIENT_ATTRIB_STACK_DEPTH, GL_MAX_CLIP_PLANES, GL_MAX_CLIPMAP_DEPTH_SGIX, GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX, GL_MAX_COLOR_MATRIX_STACK_DEPTH, GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI, GL_MAX_CONVOLUTION_HEIGHT, GL_MAX_CONVOLUTION_HEIGHT_EXT, GL_MAX_CONVOLUTION_WIDTH, GL_MAX_CONVOLUTION_WIDTH_EXT, GL_MAX_CUBE_MAP_TEXTURE_SIZE, GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB, GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT, GL_MAX_DEFORMATION_ORDER_SGIX, GL_MAX_ELEMENTS_INDICES, GL_MAX_ELEMENTS_INDICES_EXT, GL_MAX_ELEMENTS_VERTICES, GL_MAX_ELEMENTS_VERTICES_EXT, GL_MAX_EVAL_ORDER, GL_MAX_EXT, GL_MAX_FOG_FUNC_POINTS_SGIS, GL_MAX_FRAGMENT_LIGHTS_SGIX, GL_MAX_FRAMEZOOM_FACTOR_SGIX, GL_MAX_GENERAL_COMBINERS_NV, GL_MAX_LIGHTS, GL_MAX_LIST_NESTING, GL_MAX_MAP_TESSELLATION_NV, GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB, GL_MAX_MODELVIEW_STACK_DEPTH, GL_MAX_NAME_STACK_DEPTH, GL_MAX_OPTIMIZED_VERTEX_SHADER_INARIANTS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT, GL_MAX_PALETTE_MATRICES_ARB, GL_MAX_PIXEL_MAP_TABLE, GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT, GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI, GL_MAX_PROJECTION_STACK_DEPTH, GL_MAX_RATIONAL_EVAL_ORDER_NV, GL_MAX_SHININESS_NV, GL_MAX_SPOT_EXPONENT_NV, GL_MAX_TEXTURE_LOD_BIAS_EXT, GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, GL_MAX_TEXTURE_RECTANGLE_SIZE_NV, GL_MAX_TEXTURE_SIZE, GL_MAX_TEXTURE_STACK_DEPTH, GL_MAX_TEXTURE_UNITS, GL_MAX_TEXTURE_UNITS_ARB, GL_MAX_TRACK_MATRICES_NV, GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV, GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV, GL_MAX_VERTEX_HINT_PGI, GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_MAX_VERTEX_SHADER_INVARIANTS_EXT, GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_MAX_VERTEX_SHADER_LOCALS_EXT, GL_MAX_VERTEX_SHADER_VARIANTS_EXT, GL_MAX_VERTEX_STREAMS_ATI, GL_MAX_VERTEX_UNITS_ARB, GL_MAX_VIEWPORT_DIMS, GL_MESA_packed_depth_stencil, GL_MESA_resize_buffers, GL_MESA_sprite_point, GL_MESA_trace, GL_MESA_window_pos, GL_MIN, GL_MIN_EXT, GL_MINMAX, GL_MINMAX_EXT, GL_MINMAX_FORMAT, GL_MINMAX_FORMAT_EXT, GL_MINMAX_SINK, GL_MINMAX_SINK_EXT, GL_MIRRORED_REPEAT_IBM, GL_MODELVIEW, GL_MODELVIEW_MATRIX, GL_MODELVIEW_PROJECTION_NV, GL_MODELVIEW_STACK_DEPTH, GL_MODELVIEW0_ARB, GL_MODELVIEW0_EXT, GL_MODELVIEW0_MATRIX_EXT, GL_MODELVIEW0_STACK_DEPTH_EXT, GL_MODELVIEW1_ARB, GL_MODELVIEW1_EXT, GL_MODELVIEW1_MATRIX_EXT, GL_MODELVIEW1_STACK_DEPTH_EXT, GL_MODELVIEW10_ARB, GL_MODELVIEW11_ARB, GL_MODELVIEW12_ARB, GL_MODELVIEW13_ARB, GL_MODELVIEW14_ARB, GL_MODELVIEW15_ARB, GL_MODELVIEW16_ARB, GL_MODELVIEW17_ARB, GL_MODELVIEW18_ARB, GL_MODELVIEW19_ARB, GL_MODELVIEW2_ARB, GL_MODELVIEW20_ARB, GL_MODELVIEW21_ARB, GL_MODELVIEW22_ARB, GL_MODELVIEW23_ARB, GL_MODELVIEW24_ARB, GL_MODELVIEW25_ARB, GL_MODELVIEW26_ARB, GL_MODELVIEW27_ARB, GL_MODELVIEW28_ARB, GL_MODELVIEW29_ARB, GL_MODELVIEW3_ARB, GL_MODELVIEW30_ARB, GL_MODELVIEW31_ARB, GL_MODELVIEW4_ARB, GL_MODELVIEW5_ARB, GL_MODELVIEW6_ARB, GL_MODELVIEW7_ARB, GL_MODELVIEW8_ARB, GL_MODELVIEW9_ARB, GL_MODULATE, GL_MOV_ATI, GL_MUL_ATI, GL_MULT, GL_MULTISAMPLE, GL_MULTISAMPLE_3DFX, GL_MULTISAMPLE_ARB, GL_MULTISAMPLE_BIT, GL_MULTISAMPLE_BIT_3DFX, GL_MULTISAMPLE_BIT_ARB, GL_MULTISAMPLE_BIT_EXT, GL_MULTISAMPLE_EXT, GL_MULTISAMPLE_SGIS, GL_MVP_MATRIX_EXT, GL_N3F_V3F, GL_NAME_STACK_DEPTH, GL_NAND, GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI, GL_NATIVE_GRAPHICS_END_HINT_PGI, GL_NATIVE_GRAPHICS_HANDLE_PGI, GL_NEAREST, GL_NEAREST_CLIPMAP_LINEAR_SGIX, GL_NEAREST_CLIPMAP_NEAREST_SGIX, GL_NEAREST_MIPMAP_LINEAR, GL_NEAREST_MIPMAP_NEAREST, GL_NEGATE_BIT_ATI, GL_NEGEXTVE_ONE_EXT, GL_NEGEXTVE_W_EXT, GL_NEGEXTVE_X_EXT, GL_NEGEXTVE_Y_EXT, GL_NEGEXTVE_Z_EXT, GL_NEVER, GL_NICEST, GL_NO_ERROR, GL_NONE, GL_NOOP, GL_NOR, GL_NORMAL_ARRAY, GL_NORMAL_ARRAY_COUNT_EXT, GL_NORMAL_ARRAY_EXT, GL_NORMAL_ARRAY_LIST_IBM, GL_NORMAL_ARRAY_LIST_STRIDE_IBM, GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL, GL_NORMAL_ARRAY_POINTER, GL_NORMAL_ARRAY_POINTER_EXT, GL_NORMAL_ARRAY_STRIDE, GL_NORMAL_ARRAY_STRIDE_EXT, GL_NORMAL_ARRAY_TYPE, GL_NORMAL_ARRAY_TYPE_EXT, GL_NORMAL_BIT_PGI, GL_NORMAL_MAP, GL_NORMAL_MAP_ARB, GL_NORMAL_MAP_EXT, GL_NORMAL_MAP_NV, GL_NORMALIZE, GL_NORMALIZED_RANGE_EXT, GL_NOTEQUAL, GL_NUM_COMPRESSED_TEXTURE_FORMATS, GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB, GL_NUM_FRAGMENT_CONSTANTS_ATI, GL_NUM_FRAGMENT_REGISTERS_ATI, GL_NUM_GENERAL_COMBINERS_NV, GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI, GL_NUM_INSTRUCTIONS_PER_PASS_ATI, GL_NUM_INSTRUCTIONS_TOTAL_ATI, GL_NUM_LOOPBACK_COMPONENTS_ATI, GL_NUM_PASSES_ATI, GL_NV_blend_square, GL_NV_copy_depth_to_color, GL_NV_evaluators, GL_NV_fence, GL_NV_fog_distance, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_program, GL_OBJECT_BUFFER_SIZE_ATI, GL_OBJECT_BUFFER_USAGE_ATI, GL_OBJECT_DISTANCE_TO_LINE_SGIS, GL_OBJECT_DISTANCE_TO_POINT_SGIS, GL_OBJECT_LINE_SGIS, GL_OBJECT_LINEAR, GL_OBJECT_PLANE, GL_OBJECT_POINT_SGIS, GL_OCCLUSION_TEST_HP, GL_OCCLUSION_TEST_RESULT_HP, GL_OFFSET_TEXTURE_2D_BIAS_NV, GL_OFFSET_TEXTURE_2D_MATRIX_NV, GL_OFFSET_TEXTURE_2D_NV, GL_OFFSET_TEXTURE_2D_SCALE_NV, GL_OFFSET_TEXTURE_BIAS_NV, GL_OFFSET_TEXTURE_MATRIX_NV, GL_OFFSET_TEXTURE_RECTANGLE_NV, GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV, GL_OFFSET_TEXTURE_SCALE_NV, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_ONE, GL_ONE_MINUS_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA_EXT, GL_ONE_MINUS_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR_EXT, GL_ONE_MINUS_DST_ALPHA, GL_ONE_MINUS_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA, GL_ONE_MINUS_SRC_COLOR, GL_OP_ADD_EXT, GL_OP_CLAMP_EXT, GL_OP_CROSS_PRODUCT_EXT, GL_OP_DOT3_EXT, GL_OP_DOT4_EXT, GL_OP_EXP_BASE_2_EXT, GL_OP_FLOOR_EXT, GL_OP_FRAC_EXT, GL_OP_INDEX_EXT, GL_OP_LOG_BASE_2_EXT, GL_OP_MADD_EXT, GL_OP_MAX_EXT, GL_OP_MIN_EXT, GL_OP_MOV_EXT, GL_OP_MUL_EXT, GL_OP_MULTIPLY_MATRIX_EXT, GL_OP_NEGATE_EXT, GL_OP_POWER_EXT, GL_OP_RECIP_EXT, GL_OP_RECIP_SQRT_EXT, GL_OP_ROUND_EXT, GL_OP_SET_GE_EXT, GL_OP_SET_LT_EXT, GL_OP_SUB_EXT, GL_OPERAND0_ALPHA, GL_OPERAND0_ALPHA_ARB, GL_OPERAND0_ALPHA_EXT, GL_OPERAND0_RGB, GL_OPERAND0_RGB_ARB, GL_OPERAND0_RGB_EXT, GL_OPERAND1_ALPHA, GL_OPERAND1_ALPHA_ARB, GL_OPERAND1_ALPHA_EXT, GL_OPERAND1_RGB, GL_OPERAND1_RGB_ARB, GL_OPERAND1_RGB_EXT, GL_OPERAND2_ALPHA, GL_OPERAND2_ALPHA_ARB, GL_OPERAND2_ALPHA_EXT, GL_OPERAND2_RGB, GL_OPERAND2_RGB_ARB, GL_OPERAND2_RGB_EXT, GL_OPERAND3_ALPHA_NV, GL_OPERAND3_RGB_NV, GL_OR, GL_OR_INVERTED, GL_OR_REVERSE, GL_ORDER, GL_OUT_OF_MEMORY, GL_OUTPUT_COLOR0_EXT, GL_OUTPUT_COLOR1_EXT, GL_OUTPUT_FOG_EXT, GL_OUTPUT_TEXTURE_COORD0_EXT, GL_OUTPUT_TEXTURE_COORD1_EXT, GL_OUTPUT_TEXTURE_COORD10_EXT, GL_OUTPUT_TEXTURE_COORD11_EXT, GL_OUTPUT_TEXTURE_COORD12_EXT, GL_OUTPUT_TEXTURE_COORD13_EXT, GL_OUTPUT_TEXTURE_COORD14_EXT, GL_OUTPUT_TEXTURE_COORD15_EXT, GL_OUTPUT_TEXTURE_COORD16_EXT, GL_OUTPUT_TEXTURE_COORD17_EXT, GL_OUTPUT_TEXTURE_COORD18_EXT, GL_OUTPUT_TEXTURE_COORD19_EXT, GL_OUTPUT_TEXTURE_COORD2_EXT, GL_OUTPUT_TEXTURE_COORD20_EXT, GL_OUTPUT_TEXTURE_COORD21_EXT, GL_OUTPUT_TEXTURE_COORD22_EXT, GL_OUTPUT_TEXTURE_COORD23_EXT, GL_OUTPUT_TEXTURE_COORD24_EXT, GL_OUTPUT_TEXTURE_COORD25_EXT, GL_OUTPUT_TEXTURE_COORD26_EXT, GL_OUTPUT_TEXTURE_COORD27_EXT, GL_OUTPUT_TEXTURE_COORD28_EXT, GL_OUTPUT_TEXTURE_COORD29_EXT, GL_OUTPUT_TEXTURE_COORD3_EXT, GL_OUTPUT_TEXTURE_COORD30_EXT, GL_OUTPUT_TEXTURE_COORD31_EXT, GL_OUTPUT_TEXTURE_COORD4_EXT, GL_OUTPUT_TEXTURE_COORD5_EXT, GL_OUTPUT_TEXTURE_COORD6_EXT, GL_OUTPUT_TEXTURE_COORD7_EXT, GL_OUTPUT_TEXTURE_COORD8_EXT, GL_OUTPUT_TEXTURE_COORD9_EXT, GL_OUTPUT_VERTEX_EXT, GL_PACK_ALIGNMENT, GL_PACK_CMYK_HINT_EXT, GL_PACK_IMAGE_DEPTH_SGIS, GL_PACK_IMAGE_HEIGHT, GL_PACK_IMAGE_HEIGHT_EXT, GL_PACK_LSB_FIRST, GL_PACK_RESAMPLE_OML, GL_PACK_RESAMPLE_SGIX, GL_PACK_ROW_LENGTH, GL_PACK_SKIP_IMAGES, GL_PACK_SKIP_IMAGES_EXT, GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, GL_PACK_SKIP_VOLUMES_SGIS, GL_PACK_SUBSAMPLE_RATE_SGIX, GL_PACK_SWAP_BYTES, GL_PARALLEL_ARRAYS_INTEL, GL_PASS_THROUGH_NV, GL_PASS_THROUGH_TOKEN, GL_PER_STAGE_CONSTANTS_NV, GL_PERSPECTIVE_CORRECTION_HINT, GL_PERTURB_EXT, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_PHONG_HINT_WIN, GL_PHONG_WIN, GL_PIXEL_CUBIC_WEIGHT_EXT, GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS, GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS, GL_PIXEL_GROUP_COLOR_SGIS, GL_PIXEL_MAG_FILTER_EXT, GL_PIXEL_MAP_A_TO_A, GL_PIXEL_MAP_A_TO_A_SIZE, GL_PIXEL_MAP_B_TO_B, GL_PIXEL_MAP_B_TO_B_SIZE, GL_PIXEL_MAP_G_TO_G, GL_PIXEL_MAP_G_TO_G_SIZE, GL_PIXEL_MAP_I_TO_A, GL_PIXEL_MAP_I_TO_A_SIZE, GL_PIXEL_MAP_I_TO_B, GL_PIXEL_MAP_I_TO_B_SIZE, GL_PIXEL_MAP_I_TO_G, GL_PIXEL_MAP_I_TO_G_SIZE, GL_PIXEL_MAP_I_TO_I, GL_PIXEL_MAP_I_TO_I_SIZE, GL_PIXEL_MAP_I_TO_R, GL_PIXEL_MAP_I_TO_R_SIZE, GL_PIXEL_MAP_R_TO_R, GL_PIXEL_MAP_R_TO_R_SIZE, GL_PIXEL_MAP_S_TO_S, GL_PIXEL_MAP_S_TO_S_SIZE, GL_PIXEL_MIN_FILTER_EXT, GL_PIXEL_MODE_BIT, GL_PIXEL_SUBSAMPLE_2424_SGIX, GL_PIXEL_SUBSAMPLE_4242_SGIX, GL_PIXEL_SUBSAMPLE_4444_SGIX, GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX, GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX, GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX, GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX, GL_PIXEL_TEX_GEN_MODE_SGIX, GL_PIXEL_TEX_GEN_Q_CEILING_SGIX, GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX, GL_PIXEL_TEX_GEN_Q_ROUND_SGIX, GL_PIXEL_TEX_GEN_SGIX, GL_PIXEL_TEXTURE_SGIS, GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX, GL_PIXEL_TILE_CACHE_INCREMENT_SGIX, GL_PIXEL_TILE_CACHE_SIZE_SGIX, GL_PIXEL_TILE_GRID_DEPTH_SGIX, GL_PIXEL_TILE_GRID_HEIGHT_SGIX, GL_PIXEL_TILE_GRID_WIDTH_SGIX, GL_PIXEL_TILE_HEIGHT_SGIX, GL_PIXEL_TILE_WIDTH_SGIX, GL_PIXEL_TRANSFORM_2D_EXT, GL_PIXEL_TRANSFORM_2D_MATRIX_EXT, GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT, GL_PN_TRIANGLES_ATI, GL_PN_TRIANGLES_NORMAL_MODE_ATI, GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI, GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI, GL_PN_TRIANGLES_POINT_MODE_ATI, GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI, GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI, GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI, GL_POINT, GL_POINT_BIT, GL_POINT_DISTANCE_ATTENUATION_ARB, GL_POINT_FADE_THRESHOLD_SIZE_ARB, GL_POINT_FADE_THRESHOLD_SIZE_EXT, GL_POINT_FADE_THRESHOLD_SIZE_SGIS, GL_POINT_SIZE, GL_POINT_SIZE_GRANULARITY, GL_POINT_SIZE_MAX_ARB, GL_POINT_SIZE_MAX_EXT, GL_POINT_SIZE_MAX_SGIS, GL_POINT_SIZE_MIN_ARB, GL_POINT_SIZE_MIN_EXT, GL_POINT_SIZE_MIN_SGIS, GL_POINT_SIZE_RANGE, GL_POINT_SMOOTH, GL_POINT_SMOOTH_HINT, GL_POINT_TOKEN, GL_POINTS, GL_POLYGON, GL_POLYGON_BIT, GL_POLYGON_MODE, GL_POLYGON_OFFSET_BIAS_EXT, GL_POLYGON_OFFSET_EXT, GL_POLYGON_OFFSET_FACTOR, GL_POLYGON_OFFSET_FACTOR_EXT, GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, GL_POLYGON_OFFSET_POINT, GL_POLYGON_OFFSET_UNITS, GL_POLYGON_SMOOTH, GL_POLYGON_SMOOTH_HINT, GL_POLYGON_STIPPLE, GL_POLYGON_STIPPLE_BIT, GL_POLYGON_TOKEN, GL_POSITION, GL_POST_COLOR_MATRIX_ALPHA_BIAS, GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI, GL_POST_COLOR_MATRIX_ALPHA_SCALE, GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI, GL_POST_COLOR_MATRIX_BLUE_BIAS, GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI, GL_POST_COLOR_MATRIX_BLUE_SCALE, GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI, GL_POST_COLOR_MATRIX_COLOR_TABLE, GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI, GL_POST_COLOR_MATRIX_GREEN_BIAS, GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI, GL_POST_COLOR_MATRIX_GREEN_SCALE, GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI, GL_POST_COLOR_MATRIX_RED_BIAS, GL_POST_COLOR_MATRIX_RED_BIAS_SGI, GL_POST_COLOR_MATRIX_RED_SCALE, GL_POST_COLOR_MATRIX_RED_SCALE_SGI, GL_POST_CONVOLUTION_ALPHA_BIAS, GL_POST_CONVOLUTION_ALPHA_BIAS_EXT, GL_POST_CONVOLUTION_ALPHA_SCALE, GL_POST_CONVOLUTION_ALPHA_SCALE_EXT, GL_POST_CONVOLUTION_BLUE_BIAS, GL_POST_CONVOLUTION_BLUE_BIAS_EXT, GL_POST_CONVOLUTION_BLUE_SCALE, GL_POST_CONVOLUTION_BLUE_SCALE_EXT, GL_POST_CONVOLUTION_COLOR_TABLE, GL_POST_CONVOLUTION_COLOR_TABLE_SGI, GL_POST_CONVOLUTION_GREEN_BIAS, GL_POST_CONVOLUTION_GREEN_BIAS_EXT, GL_POST_CONVOLUTION_GREEN_SCALE, GL_POST_CONVOLUTION_GREEN_SCALE_EXT, GL_POST_CONVOLUTION_RED_BIAS, GL_POST_CONVOLUTION_RED_BIAS_EXT, GL_POST_CONVOLUTION_RED_SCALE, GL_POST_CONVOLUTION_RED_SCALE_EXT, GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP, GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX, GL_POST_TEXTURE_FILTER_BIAS_SGIX, GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX, GL_POST_TEXTURE_FILTER_SCALE_SGIX, GL_PREFER_DOUBLEBUFFER_HINT_PGI, GL_PRESERVE_ATI, GL_PREVIOUS, GL_PREVIOUS_ARB, GL_PREVIOUS_EXT, GL_PREVIOUS_TEXTURE_INPUT_NV, GL_PRIMARY_COLOR, GL_PRIMARY_COLOR_ARB, GL_PRIMARY_COLOR_EXT, GL_PRIMARY_COLOR_NV, GL_PROGRAM_ERROR_POSITION_NV, GL_PROGRAM_LENGTH_NV, GL_PROGRAM_PARAMETER_NV, GL_PROGRAM_RESIDENT_NV, GL_PROGRAM_STRING_NV, GL_PROGRAM_TARGET_NV, GL_PROJECTION, GL_PROJECTION_MATRIX, GL_PROJECTION_STACK_DEPTH, GL_PROXY_COLOR_TABLE, GL_PROXY_COLOR_TABLE_SGI, GL_PROXY_HISTOGRAM, GL_PROXY_HISTOGRAM_EXT, GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE, GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI, GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI, GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP, GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_1D_EXT, GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_2D_EXT, GL_PROXY_TEXTURE_3D, GL_PROXY_TEXTURE_3D_EXT, GL_PROXY_TEXTURE_4D_SGIS, GL_PROXY_TEXTURE_COLOR_TABLE_SGI, GL_PROXY_TEXTURE_CUBE_MAP, GL_PROXY_TEXTURE_CUBE_MAP_ARB, GL_PROXY_TEXTURE_CUBE_MAP_EXT, GL_PROXY_TEXTURE_RECTANGLE_NV, GL_Q, GL_QUAD_ALPHA4_SGIS, GL_QUAD_ALPHA8_SGIS, GL_QUAD_INTENSITY4_SGIS, GL_QUAD_INTENSITY8_SGIS, GL_QUAD_LUMINANCE4_SGIS, GL_QUAD_LUMINANCE8_SGIS, GL_QUAD_STRIP, GL_QUAD_TEXTURE_SELECT_SGIS, GL_QUADRATIC_ATTENUATION, GL_QUADS, GL_QUARTER_BIT_ATI, GL_R, GL_R1UI_C3F_V3F_SUN, GL_R1UI_C4F_N3F_V3F_SUN, GL_R1UI_C4UB_V3F_SUN, GL_R1UI_N3F_V3F_SUN, GL_R1UI_T2F_C4F_N3F_V3F_SUN, GL_R1UI_T2F_N3F_V3F_SUN, GL_R1UI_T2F_V3F_SUN, GL_R1UI_V3F_SUN, GL_R3_G3_B2, GL_RASTER_POSITION_UNCLIPPED_IBM, GL_READ_BUFFER, GL_RECLAIM_MEMORY_HINT_PGI, GL_RED, GL_RED_BIAS, GL_RED_BIT_ATI, GL_RED_BITS, GL_RED_MAX_CLAMP_INGR, GL_RED_MIN_CLAMP_INGR, GL_RED_SCALE, GL_REDUCE, GL_REDUCE_EXT, GL_REFERENCE_PLANE_EQUATION_SGIX, GL_REFERENCE_PLANE_SGIX, GL_REFLECTION_MAP, GL_REFLECTION_MAP_ARB, GL_REFLECTION_MAP_EXT, GL_REFLECTION_MAP_NV, GL_REG_0_ATI, GL_REG_1_ATI, GL_REG_10_ATI, GL_REG_11_ATI, GL_REG_12_ATI, GL_REG_13_ATI, GL_REG_14_ATI, GL_REG_15_ATI, GL_REG_16_ATI, GL_REG_17_ATI, GL_REG_18_ATI, GL_REG_19_ATI, GL_REG_2_ATI, GL_REG_20_ATI, GL_REG_21_ATI, GL_REG_22_ATI, GL_REG_23_ATI, GL_REG_24_ATI, GL_REG_25_ATI, GL_REG_26_ATI, GL_REG_27_ATI, GL_REG_28_ATI, GL_REG_29_ATI, GL_REG_3_ATI, GL_REG_30_ATI, GL_REG_31_ATI, GL_REG_4_ATI, GL_REG_5_ATI, GL_REG_6_ATI, GL_REG_7_ATI, GL_REG_8_ATI, GL_REG_9_ATI, GL_REGISTER_COMBINERS_NV, GL_REND_screen_coordinates, GL_RENDER, GL_RENDER_MODE, GL_RENDERER, GL_REPEAT, GL_REPLACE, GL_REPLACE_EXT, GL_REPLACE_MIDDLE_SUN, GL_REPLACE_OLDEST_SUN, GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN, GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN, GL_REPLACEMENT_CODE_ARRAY_SUN, GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN, GL_REPLACEMENT_CODE_SUN, GL_REPLICATE_BORDER, GL_REPLICATE_BORDER_HP, GL_RESAMPLE_AVERAGE_OML, GL_RESAMPLE_DECIMATE_OML, GL_RESAMPLE_DECIMATE_SGIX, GL_RESAMPLE_REPLICATE_OML, GL_RESAMPLE_REPLICATE_SGIX, GL_RESAMPLE_ZERO_FILL_OML, GL_RESAMPLE_ZERO_FILL_SGIX, GL_RESCALE_NORMAL, GL_RESCALE_NORMAL_EXT, GL_RESTART_SUN, GL_RETURN, GL_RGB, GL_RGB_SCALE, GL_RGB_SCALE_ARB, GL_RGB_SCALE_EXT, GL_RGB10, GL_RGB10_A2, GL_RGB10_A2_EXT, GL_RGB10_EXT, GL_RGB12, GL_RGB12_EXT, GL_RGB16, GL_RGB16_EXT, GL_RGB2_EXT, GL_RGB4, GL_RGB4_EXT, GL_RGB5, GL_RGB5_A1, GL_RGB5_A1_EXT, GL_RGB5_EXT, GL_RGB8, GL_RGB8_EXT, GL_RGBA, GL_RGBA_MODE, GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV, GL_RGBA12, GL_RGBA12_EXT, GL_RGBA16, GL_RGBA16_EXT, GL_RGBA2, GL_RGBA2_EXT, GL_RGBA4, GL_RGBA4_EXT, GL_RGBA8, GL_RGBA8_EXT, GL_RIGHT, GL_S, GL_SAMPLE_ALPHA_TO_COVERAGE, GL_SAMPLE_ALPHA_TO_COVERAGE_ARB, GL_SAMPLE_ALPHA_TO_MASK_EXT, GL_SAMPLE_ALPHA_TO_MASK_SGIS, GL_SAMPLE_ALPHA_TO_ONE, GL_SAMPLE_ALPHA_TO_ONE_ARB, GL_SAMPLE_ALPHA_TO_ONE_EXT, GL_SAMPLE_ALPHA_TO_ONE_SGIS, GL_SAMPLE_BUFFERS, GL_SAMPLE_BUFFERS_3DFX, GL_SAMPLE_BUFFERS_ARB, GL_SAMPLE_BUFFERS_EXT, GL_SAMPLE_BUFFERS_SGIS, GL_SAMPLE_COVERAGE, GL_SAMPLE_COVERAGE_ARB, GL_SAMPLE_COVERAGE_INVERT, GL_SAMPLE_COVERAGE_INVERT_ARB, GL_SAMPLE_COVERAGE_VALUE, GL_SAMPLE_COVERAGE_VALUE_ARB, GL_SAMPLE_MASK_EXT, GL_SAMPLE_MASK_INVERT_EXT, GL_SAMPLE_MASK_INVERT_SGIS, GL_SAMPLE_MASK_SGIS, GL_SAMPLE_MASK_VALUE_EXT, GL_SAMPLE_MASK_VALUE_SGIS, GL_SAMPLE_PATTERN_EXT, GL_SAMPLE_PATTERN_SGIS, GL_SAMPLES, GL_SAMPLES_3DFX, GL_SAMPLES_ARB, GL_SAMPLES_EXT, GL_SAMPLES_SGIS, GL_SATURATE_BIT_ATI, GL_SCALAR_EXT, GL_SCALE_BY_FOUR_NV, GL_SCALE_BY_ONE_HALF_NV, GL_SCALE_BY_TWO_NV, GL_SCALEBIAS_HINT_SGIX, GL_SCISSOR_BIT, GL_SCISSOR_BOX, GL_SCISSOR_TEST, GL_SCREEN_COORDINATES_REND, GL_SECONDARY_COLOR_ARRAY_EXT, GL_SECONDARY_COLOR_ARRAY_LIST_IBM, GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM, GL_SECONDARY_COLOR_ARRAY_POINTER_EXT, GL_SECONDARY_COLOR_ARRAY_SIZE_EXT, GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT, GL_SECONDARY_COLOR_ARRAY_TYPE_EXT, GL_SECONDARY_COLOR_NV, GL_SECONDARY_INTERPOLATOR_ATI, GL_SELECT, GL_SELECTION_BUFFER_POINTER, GL_SELECTION_BUFFER_SIZE, GL_SEPARABLE_2D, GL_SEPARABLE_2D_EXT, GL_SEPARATE_SPECULAR_COLOR, GL_SEPARATE_SPECULAR_COLOR_EXT, GL_SET, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_sharpen_texture, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture4D, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fog_scale, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_texture_select, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SHADE_MODEL, GL_SHADER_CONSISTENT_NV, GL_SHADER_OPERATION_NV, GL_SHADOW_AMBIENT_SGIX, GL_SHADOW_ATTENUATION_EXT, GL_SHARED_TEXTURE_PALETTE_EXT, GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS, GL_SHININESS, GL_SHORT, GL_SIGNED_ALPHA_NV, GL_SIGNED_ALPHA8_NV, GL_SIGNED_HILO_NV, GL_SIGNED_HILO16_NV, GL_SIGNED_IDENTITY_NV, GL_SIGNED_INTENSITY_NV, GL_SIGNED_INTENSITY8_NV, GL_SIGNED_LUMINANCE_ALPHA_NV, GL_SIGNED_LUMINANCE_NV, GL_SIGNED_LUMINANCE8_ALPHA8_NV, GL_SIGNED_LUMINANCE8_NV, GL_SIGNED_NEGATE_NV, GL_SIGNED_RGB_NV, GL_SIGNED_RGB_UNSIGNED_ALPHA_NV, GL_SIGNED_RGB8_NV, GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV, GL_SIGNED_RGBA_NV, GL_SIGNED_RGBA8_NV, GL_SINGLE_COLOR, GL_SINGLE_COLOR_EXT, GL_SMOOTH, GL_SMOOTH_LINE_WIDTH_GRANULARITY, GL_SMOOTH_LINE_WIDTH_RANGE, GL_SMOOTH_POINT_SIZE_GRANULARITY, GL_SMOOTH_POINT_SIZE_RANGE, GL_SOURCE0_ALPHA, GL_SOURCE0_ALPHA_ARB, GL_SOURCE0_ALPHA_EXT, GL_SOURCE0_RGB, GL_SOURCE0_RGB_ARB, GL_SOURCE0_RGB_EXT, GL_SOURCE1_ALPHA, GL_SOURCE1_ALPHA_ARB, GL_SOURCE1_ALPHA_EXT, GL_SOURCE1_RGB, GL_SOURCE1_RGB_ARB, GL_SOURCE1_RGB_EXT, GL_SOURCE2_ALPHA, GL_SOURCE2_ALPHA_ARB, GL_SOURCE2_ALPHA_EXT, GL_SOURCE2_RGB, GL_SOURCE2_RGB_ARB, GL_SOURCE2_RGB_EXT, GL_SOURCE3_ALPHA_NV, GL_SOURCE3_RGB_NV, GL_SPARE0_NV, GL_SPARE0_PLUS_SECONDARY_COLOR_NV, GL_SPARE1_NV, GL_SPECULAR, GL_SPHERE_MAP, GL_SPOT_CUTOFF, GL_SPOT_DIRECTION, GL_SPOT_EXPONENT, GL_SPRITE_AXIAL_SGIX, GL_SPRITE_AXIS_SGIX, GL_SPRITE_EYE_ALIGNED_SGIX, GL_SPRITE_MODE_SGIX, GL_SPRITE_OBJECT_ALIGNED_SGIX, GL_SPRITE_POINT_MESA, GL_SPRITE_SGIX, GL_SPRITE_TRANSLATION_SGIX, GL_SRC_ALPHA, GL_SRC_ALPHA_SATURATE, GL_SRC_COLOR, GL_STACK_OVERFLOW, GL_STACK_UNDERFLOW, GL_STATIC_ATI, GL_STENCIL, GL_STENCIL_BITS, GL_STENCIL_BUFFER_BIT, GL_STENCIL_CLEAR_VALUE, GL_STENCIL_FAIL, GL_STENCIL_FUNC, GL_STENCIL_INDEX, GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_PASS_DEPTH_PASS, GL_STENCIL_REF, GL_STENCIL_TEST, GL_STENCIL_VALUE_MASK, GL_STENCIL_WRITEMASK, GL_STEREO, GL_STRICT_DEPTHFUNC_HINT_PGI, GL_STRICT_LIGHTING_HINT_PGI, GL_STRICT_SCISSOR_HINT_PGI, GL_SUB_ATI, GL_SUBPIXEL_BITS, GL_SUBTRACT, GL_SUBTRACT_ARB, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_triangle_list, GL_SUN_vertex, GL_SUNX_constant_data, GL_SWIZZLE_STQ_ATI, GL_SWIZZLE_STQ_DQ_ATI, GL_SWIZZLE_STR_ATI, GL_SWIZZLE_STR_DR_ATI, GL_SWIZZLE_STRQ_ATI, GL_SWIZZLE_STRQ_DQ_ATI, GL_T, GL_T2F_C3F_V3F, GL_T2F_C4F_N3F_V3F, GL_T2F_C4UB_V3F, GL_T2F_IUI_N3F_V2F_EXT, GL_T2F_IUI_N3F_V3F_EXT, GL_T2F_IUI_V2F_EXT, GL_T2F_IUI_V3F_EXT, GL_T2F_N3F_V3F, GL_T2F_V3F, GL_T4F_C4F_N3F_V4F, GL_T4F_V4F, GL_TABLE_TOO_LARGE, GL_TABLE_TOO_LARGE_EXT, GL_TANGENT_ARRAY_EXT, GL_TANGENT_ARRAY_POINTER_EXT, GL_TANGENT_ARRAY_STRIDE_EXT, GL_TANGENT_ARRAY_TYPE_EXT, GL_TEXCOORD1_BIT_PGI, GL_TEXCOORD2_BIT_PGI, GL_TEXCOORD3_BIT_PGI, GL_TEXCOORD4_BIT_PGI, GL_TEXTURE, GL_TEXTURE_1D, GL_TEXTURE_1D_BINDING_EXT, GL_TEXTURE_2D, GL_TEXTURE_2D_BINDING_EXT, GL_TEXTURE_3D, GL_TEXTURE_3D_BINDING_EXT, GL_TEXTURE_3D_EXT, GL_TEXTURE_4D_BINDING_SGIS, GL_TEXTURE_4D_SGIS, GL_TEXTURE_4DSIZE_SGIS, GL_TEXTURE_ALPHA_SIZE, GL_TEXTURE_ALPHA_SIZE_EXT, GL_TEXTURE_APPLICATION_MODE_EXT, GL_TEXTURE_BASE_LEVEL, GL_TEXTURE_BASE_LEVEL_SGIS, GL_TEXTURE_BINDING_1D, GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_CUBE_MAP, GL_TEXTURE_BINDING_CUBE_MAP_ARB, GL_TEXTURE_BINDING_CUBE_MAP_EXT, GL_TEXTURE_BINDING_RECTANGLE_NV, GL_TEXTURE_BIT, GL_TEXTURE_BLUE_SIZE, GL_TEXTURE_BLUE_SIZE_EXT, GL_TEXTURE_BORDER, GL_TEXTURE_BORDER_COLOR, GL_TEXTURE_BORDER_VALUES_NV, GL_TEXTURE_CLIPMAP_CENTER_SGIX, GL_TEXTURE_CLIPMAP_DEPTH_SGIX, GL_TEXTURE_CLIPMAP_FRAME_SGIX, GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX, GL_TEXTURE_CLIPMAP_OFFSET_SGIX, GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX, GL_TEXTURE_COLOR_TABLE_SGI, GL_TEXTURE_COLOR_WRITEMASK_SGIS, GL_TEXTURE_COMPARE_OPERATOR_SGIX, GL_TEXTURE_COMPARE_SGIX, GL_TEXTURE_COMPONENTS, GL_TEXTURE_COMPRESSED, GL_TEXTURE_COMPRESSED_ARB, GL_TEXTURE_COMPRESSED_IMAGE_SIZE, GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB, GL_TEXTURE_COMPRESSION_HINT, GL_TEXTURE_COMPRESSION_HINT_ARB, GL_TEXTURE_CONSTANT_DATA_SUNX, GL_TEXTURE_COORD_ARRAY, GL_TEXTURE_COORD_ARRAY_COUNT_EXT, GL_TEXTURE_COORD_ARRAY_EXT, GL_TEXTURE_COORD_ARRAY_LIST_IBM, GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM, GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL, GL_TEXTURE_COORD_ARRAY_POINTER, GL_TEXTURE_COORD_ARRAY_POINTER_EXT, GL_TEXTURE_COORD_ARRAY_SIZE, GL_TEXTURE_COORD_ARRAY_SIZE_EXT, GL_TEXTURE_COORD_ARRAY_STRIDE, GL_TEXTURE_COORD_ARRAY_STRIDE_EXT, GL_TEXTURE_COORD_ARRAY_TYPE, GL_TEXTURE_COORD_ARRAY_TYPE_EXT, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_CUBE_MAP_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT, GL_TEXTURE_DEFORMATION_BIT_SGIX, GL_TEXTURE_DEFORMATION_SGIX, GL_TEXTURE_DEPTH, GL_TEXTURE_DEPTH_EXT, GL_TEXTURE_DS_SIZE_NV, GL_TEXTURE_DT_SIZE_NV, GL_TEXTURE_ENV, GL_TEXTURE_ENV_BIAS_SGIX, GL_TEXTURE_ENV_COLOR, GL_TEXTURE_ENV_MODE, GL_TEXTURE_FILTER_CONTROL_EXT, GL_TEXTURE_FILTER4_SIZE_SGIS, GL_TEXTURE_GEN_MODE, GL_TEXTURE_GEN_Q, GL_TEXTURE_GEN_R, GL_TEXTURE_GEN_S, GL_TEXTURE_GEN_T, GL_TEXTURE_GEQUAL_R_SGIX, GL_TEXTURE_GREEN_SIZE, GL_TEXTURE_GREEN_SIZE_EXT, GL_TEXTURE_HEIGHT, GL_TEXTURE_HI_SIZE_NV, GL_TEXTURE_INDEX_SIZE_EXT, GL_TEXTURE_INTENSITY_SIZE, GL_TEXTURE_INTENSITY_SIZE_EXT, GL_TEXTURE_INTERNAL_FORMAT, GL_TEXTURE_LEQUAL_R_SGIX, GL_TEXTURE_LIGHT_EXT, GL_TEXTURE_LIGHTING_MODE_HP, GL_TEXTURE_LO_SIZE_NV, GL_TEXTURE_LOD_BIAS_EXT, GL_TEXTURE_LOD_BIAS_R_SGIX, GL_TEXTURE_LOD_BIAS_S_SGIX, GL_TEXTURE_LOD_BIAS_T_SGIX, GL_TEXTURE_LUMINANCE_SIZE, GL_TEXTURE_LUMINANCE_SIZE_EXT, GL_TEXTURE_MAG_FILTER, GL_TEXTURE_MAG_SIZE_NV, GL_TEXTURE_MATERIAL_FACE_EXT, GL_TEXTURE_MATERIAL_PARAMETER_EXT, GL_TEXTURE_MATRIX, GL_TEXTURE_MAX_ANISOTROPY_EXT, GL_TEXTURE_MAX_CLAMP_R_SGIX, GL_TEXTURE_MAX_CLAMP_S_SGIX, GL_TEXTURE_MAX_CLAMP_T_SGIX, GL_TEXTURE_MAX_LEVEL, GL_TEXTURE_MAX_LEVEL_SGIS, GL_TEXTURE_MAX_LOD, GL_TEXTURE_MAX_LOD_SGIS, GL_TEXTURE_MIN_FILTER, GL_TEXTURE_MIN_LOD, GL_TEXTURE_MIN_LOD_SGIS, GL_TEXTURE_MULTI_BUFFER_HINT_SGIX, GL_TEXTURE_NORMAL_EXT, GL_TEXTURE_POST_SPECULAR_HP, GL_TEXTURE_PRE_SPECULAR_HP, GL_TEXTURE_PRIORITY, GL_TEXTURE_PRIORITY_EXT, GL_TEXTURE_RECTANGLE_NV, GL_TEXTURE_RED_SIZE, GL_TEXTURE_RED_SIZE_EXT, GL_TEXTURE_RESIDENT, GL_TEXTURE_RESIDENT_EXT, GL_TEXTURE_SHADER_NV, GL_TEXTURE_STACK_DEPTH, GL_TEXTURE_TOO_LARGE_EXT, GL_TEXTURE_WIDTH, GL_TEXTURE_WRAP_Q_SGIS, GL_TEXTURE_WRAP_R, GL_TEXTURE_WRAP_R_EXT, GL_TEXTURE_WRAP_S, GL_TEXTURE_WRAP_T, GL_TEXTURE0, GL_TEXTURE0_ARB, GL_TEXTURE1, GL_TEXTURE1_ARB, GL_TEXTURE10, GL_TEXTURE10_ARB, GL_TEXTURE11, GL_TEXTURE11_ARB, GL_TEXTURE12, GL_TEXTURE12_ARB, GL_TEXTURE13, GL_TEXTURE13_ARB, GL_TEXTURE14, GL_TEXTURE14_ARB, GL_TEXTURE15, GL_TEXTURE15_ARB, GL_TEXTURE16, GL_TEXTURE16_ARB, GL_TEXTURE17, GL_TEXTURE17_ARB, GL_TEXTURE18, GL_TEXTURE18_ARB, GL_TEXTURE19, GL_TEXTURE19_ARB, GL_TEXTURE2, GL_TEXTURE2_ARB, GL_TEXTURE20, GL_TEXTURE20_ARB, GL_TEXTURE21, GL_TEXTURE21_ARB, GL_TEXTURE22, GL_TEXTURE22_ARB, GL_TEXTURE23, GL_TEXTURE23_ARB, GL_TEXTURE24, GL_TEXTURE24_ARB, GL_TEXTURE25, GL_TEXTURE25_ARB, GL_TEXTURE26, GL_TEXTURE26_ARB, GL_TEXTURE27, GL_TEXTURE27_ARB, GL_TEXTURE28, GL_TEXTURE28_ARB, GL_TEXTURE29, GL_TEXTURE29_ARB, GL_TEXTURE3, GL_TEXTURE3_ARB, GL_TEXTURE30, GL_TEXTURE30_ARB, GL_TEXTURE31, GL_TEXTURE31_ARB, GL_TEXTURE4, GL_TEXTURE4_ARB, GL_TEXTURE5, GL_TEXTURE5_ARB, GL_TEXTURE6, GL_TEXTURE6_ARB, GL_TEXTURE7, GL_TEXTURE7_ARB, GL_TEXTURE8, GL_TEXTURE8_ARB, GL_TEXTURE9, GL_TEXTURE9_ARB, GL_TRACE_ALL_BITS_MESA, GL_TRACE_ARRAYS_BIT_MESA, GL_TRACE_ERRORS_BIT_MESA, GL_TRACE_MASK_MESA, GL_TRACE_NAME_MESA, GL_TRACE_OPERATIONS_BIT_MESA, GL_TRACE_PIXELS_BIT_MESA, GL_TRACE_PRIMITIVES_BIT_MESA, GL_TRACE_TEXTURES_BIT_MESA, GL_TRACK_MATRIX_NV, GL_TRACK_MATRIX_TRANSFORM_NV, GL_TRANSFORM_BIT, GL_TRANSFORM_HINT_APPLE, GL_TRANSPOSE_COLOR_MATRIX, GL_TRANSPOSE_COLOR_MATRIX_ARB, GL_TRANSPOSE_MODELVIEW_MATRIX, GL_TRANSPOSE_MODELVIEW_MATRIX_ARB, GL_TRANSPOSE_NV, GL_TRANSPOSE_PROJECTION_MATRIX, GL_TRANSPOSE_PROJECTION_MATRIX_ARB, GL_TRANSPOSE_TEXTURE_MATRIX, GL_TRANSPOSE_TEXTURE_MATRIX_ARB, GL_TRIANGLE_FAN, GL_TRIANGLE_LIST_SUN, GL_TRIANGLE_STRIP, GL_TRIANGLES, GL_TRUE, GL_UNPACK_ALIGNMENT, GL_UNPACK_CMYK_HINT_EXT, GL_UNPACK_CONSTANT_DATA_SUNX, GL_UNPACK_IMAGE_DEPTH_SGIS, GL_UNPACK_IMAGE_HEIGHT, GL_UNPACK_IMAGE_HEIGHT_EXT, GL_UNPACK_LSB_FIRST, GL_UNPACK_RESAMPLE_OML, GL_UNPACK_RESAMPLE_SGIX, GL_UNPACK_ROW_LENGTH, GL_UNPACK_SKIP_IMAGES, GL_UNPACK_SKIP_IMAGES_EXT, GL_UNPACK_SKIP_PIXELS, GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_VOLUMES_SGIS, GL_UNPACK_SUBSAMPLE_RATE_SGIX, GL_UNPACK_SWAP_BYTES, GL_UNSIGNED_BYTE, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_3_3_2_EXT, GL_UNSIGNED_IDENTITY_NV, GL_UNSIGNED_INT, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_10_10_10_2_EXT, GL_UNSIGNED_INT_2_10_10_10_REV, GL_UNSIGNED_INT_24_8_MESA, GL_UNSIGNED_INT_24_8_NV, GL_UNSIGNED_INT_8_24_REV_MESA, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_EXT, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_8_8_S8_S8_REV_NV, GL_UNSIGNED_INT_S8_S8_8_8_NV, GL_UNSIGNED_INVERT_NV, GL_UNSIGNED_SHORT, GL_UNSIGNED_SHORT_1_15_REV_MESA, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_SHORT_15_1_MESA, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_EXT, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_5_5_5_1_EXT, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_V2F, GL_V3F, GL_VARIABLE_A_NV, GL_VARIABLE_B_NV, GL_VARIABLE_C_NV, GL_VARIABLE_D_NV, GL_VARIABLE_E_NV, GL_VARIABLE_F_NV, GL_VARIABLE_G_NV, GL_VARIANT_ARRAY_EXT, GL_VARIANT_ARRAY_POINTER_EXT, GL_VARIANT_ARRAY_STRIDE_EXT, GL_VARIANT_ARRAY_TYPE_EXT, GL_VARIANT_DATATYPE_EXT, GL_VARIANT_EXT, GL_VARIANT_VALUE_EXT, GL_VECTOR_EXT, GL_VENDOR, GL_VERSION, GL_VERSION_1_1, GL_VERSION_1_2, GL_VERSION_1_3, GL_VERTEX_ARRAY, GL_VERTEX_ARRAY_COUNT_EXT, GL_VERTEX_ARRAY_EXT, GL_VERTEX_ARRAY_LIST_IBM, GL_VERTEX_ARRAY_LIST_STRIDE_IBM, GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL, GL_VERTEX_ARRAY_POINTER, GL_VERTEX_ARRAY_POINTER_EXT, GL_VERTEX_ARRAY_RANGE_LENGTH_NV, GL_VERTEX_ARRAY_RANGE_NV, GL_VERTEX_ARRAY_RANGE_POINTER_NV, GL_VERTEX_ARRAY_RANGE_VALID_NV, GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV, GL_VERTEX_ARRAY_SIZE, GL_VERTEX_ARRAY_SIZE_EXT, GL_VERTEX_ARRAY_STRIDE, GL_VERTEX_ARRAY_STRIDE_EXT, GL_VERTEX_ARRAY_TYPE, GL_VERTEX_ARRAY_TYPE_EXT, GL_VERTEX_ATTRIB_ARRAY0_NV, GL_VERTEX_ATTRIB_ARRAY1_NV, GL_VERTEX_ATTRIB_ARRAY10_NV, GL_VERTEX_ATTRIB_ARRAY11_NV, GL_VERTEX_ATTRIB_ARRAY12_NV, GL_VERTEX_ATTRIB_ARRAY13_NV, GL_VERTEX_ATTRIB_ARRAY14_NV, GL_VERTEX_ATTRIB_ARRAY15_NV, GL_VERTEX_ATTRIB_ARRAY2_NV, GL_VERTEX_ATTRIB_ARRAY3_NV, GL_VERTEX_ATTRIB_ARRAY4_NV, GL_VERTEX_ATTRIB_ARRAY5_NV, GL_VERTEX_ATTRIB_ARRAY6_NV, GL_VERTEX_ATTRIB_ARRAY7_NV, GL_VERTEX_ATTRIB_ARRAY8_NV, GL_VERTEX_ATTRIB_ARRAY9_NV, GL_VERTEX_BLEND_ARB, GL_VERTEX_CONSISTENT_HINT_PGI, GL_VERTEX_DATA_HINT_PGI, GL_VERTEX_PRECLIP_HINT_SGIX, GL_VERTEX_PRECLIP_SGIX, GL_VERTEX_PROGRAM_BINDING_NV, GL_VERTEX_PROGRAM_NV, GL_VERTEX_PROGRAM_POINT_SIZE_NV, GL_VERTEX_PROGRAM_TWO_SIDE_NV, GL_VERTEX_SHADER_BINDING_EXT, GL_VERTEX_SHADER_EXT, GL_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_VERTEX_SHADER_INVARIANTS_EXT, GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_VERTEX_SHADER_LOCALS_EXT, GL_VERTEX_SHADER_OPTIMIZED_EXT, GL_VERTEX_SHADER_VARIANTS_EXT, GL_VERTEX_SOURCE_ATI, GL_VERTEX_STATE_PROGRAM_NV, GL_VERTEX_STREAM0_ATI, GL_VERTEX_STREAM1_ATI, GL_VERTEX_STREAM2_ATI, GL_VERTEX_STREAM3_ATI, GL_VERTEX_STREAM4_ATI, GL_VERTEX_STREAM5_ATI, GL_VERTEX_STREAM6_ATI, GL_VERTEX_STREAM7_ATI, GL_VERTEX_WEIGHT_ARRAY_EXT, GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT, GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT, GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT, GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT, GL_VERTEX_WEIGHTING_EXT, GL_VERTEX23_BIT_PGI, GL_VERTEX4_BIT_PGI, GL_VIBRANCE_BIAS_NV, GL_VIBRANCE_SCALE_NV, GL_VIEWPORT, GL_VIEWPORT_BIT, GL_W_EXT, GL_WEIGHT_ARRAY_ARB, GL_WEIGHT_ARRAY_POINTER_ARB, GL_WEIGHT_ARRAY_SIZE_ARB, GL_WEIGHT_ARRAY_STRIDE_ARB, GL_WEIGHT_ARRAY_TYPE_ARB, GL_WEIGHT_SUM_UNITY_ARB, GL_WIDE_LINE_HINT_PGI, GL_WIN_phong_shading, GL_WIN_specular_fog, GL_WRAP_BORDER, GL_WRAP_BORDER_SUN, GL_X_EXT, GL_XOR, GL_Y_EXT, GL_YCRCB_422_SGIX, GL_YCRCB_444_SGIX, GL_YCRCB_SGIX, GL_YCRCBA_SGIX, GL_Z_EXT, GL_ZERO, GL_ZOOM_X, GL_ZOOM_Y
 
Fields inherited from interface gl4java.GLUEnum
GLU_AUTO_LOAD_MATRIX, GLU_BEGIN, GLU_CCW, GLU_CULLING, GLU_CW, GLU_DISPLAY_MODE, GLU_DOMAIN_DISTANCE, GLU_EDGE_FLAG, GLU_END, GLU_ERROR, GLU_EXTENSIONS, GLU_EXTERIOR, GLU_FALSE, GLU_FILL, GLU_FLAT, GLU_INSIDE, GLU_INTERIOR, GLU_INVALID_ENUM, GLU_INVALID_OPERATION, GLU_INVALID_VALUE, GLU_LINE, GLU_MAP1_TRIM_2, GLU_MAP1_TRIM_3, GLU_NONE, GLU_NURBS_BEGIN, GLU_NURBS_BEGIN_DATA, GLU_NURBS_BEGIN_DATA_EXT, GLU_NURBS_BEGIN_EXT, GLU_NURBS_COLOR, GLU_NURBS_COLOR_DATA, GLU_NURBS_COLOR_DATA_EXT, GLU_NURBS_COLOR_EXT, GLU_NURBS_END, GLU_NURBS_END_DATA, GLU_NURBS_END_DATA_EXT, GLU_NURBS_END_EXT, GLU_NURBS_ERROR, GLU_NURBS_ERROR1, GLU_NURBS_ERROR10, GLU_NURBS_ERROR11, GLU_NURBS_ERROR12, GLU_NURBS_ERROR13, GLU_NURBS_ERROR14, GLU_NURBS_ERROR15, GLU_NURBS_ERROR16, GLU_NURBS_ERROR17, GLU_NURBS_ERROR18, GLU_NURBS_ERROR19, GLU_NURBS_ERROR2, GLU_NURBS_ERROR20, GLU_NURBS_ERROR21, GLU_NURBS_ERROR22, GLU_NURBS_ERROR23, GLU_NURBS_ERROR24, GLU_NURBS_ERROR25, GLU_NURBS_ERROR26, GLU_NURBS_ERROR27, GLU_NURBS_ERROR28, GLU_NURBS_ERROR29, GLU_NURBS_ERROR3, GLU_NURBS_ERROR30, GLU_NURBS_ERROR31, GLU_NURBS_ERROR32, GLU_NURBS_ERROR33, GLU_NURBS_ERROR34, GLU_NURBS_ERROR35, GLU_NURBS_ERROR36, GLU_NURBS_ERROR37, GLU_NURBS_ERROR4, GLU_NURBS_ERROR5, GLU_NURBS_ERROR6, GLU_NURBS_ERROR7, GLU_NURBS_ERROR8, GLU_NURBS_ERROR9, GLU_NURBS_MODE, GLU_NURBS_MODE_EXT, GLU_NURBS_NORMAL, GLU_NURBS_NORMAL_DATA, GLU_NURBS_NORMAL_DATA_EXT, GLU_NURBS_NORMAL_EXT, GLU_NURBS_RENDERER, GLU_NURBS_RENDERER_EXT, GLU_NURBS_TESSELLATOR, GLU_NURBS_TESSELLATOR_EXT, GLU_NURBS_TEX_COORD_DATA_EXT, GLU_NURBS_TEX_COORD_EXT, GLU_NURBS_TEXTURE_COORD, GLU_NURBS_TEXTURE_COORD_DATA, GLU_NURBS_VERTEX, GLU_NURBS_VERTEX_DATA, GLU_NURBS_VERTEX_DATA_EXT, GLU_NURBS_VERTEX_EXT, GLU_OBJECT_PARAMETRIC_ERROR, GLU_OBJECT_PARAMETRIC_ERROR_EXT, GLU_OBJECT_PATH_LENGTH, GLU_OBJECT_PATH_LENGTH_EXT, GLU_OUT_OF_MEMORY, GLU_OUTLINE_PATCH, GLU_OUTLINE_POLYGON, GLU_OUTSIDE, GLU_PARAMETRIC_ERROR, GLU_PARAMETRIC_TOLERANCE, GLU_PATH_LENGTH, GLU_POINT, GLU_SAMPLING_METHOD, GLU_SAMPLING_TOLERANCE, GLU_SILHOUETTE, GLU_SMOOTH, GLU_TESS_BEGIN, GLU_TESS_BEGIN_DATA, GLU_TESS_BOUNDARY_ONLY, GLU_TESS_COMBINE, GLU_TESS_COMBINE_DATA, GLU_TESS_COORD_TOO_LARGE, GLU_TESS_EDGE_FLAG, GLU_TESS_EDGE_FLAG_DATA, GLU_TESS_END, GLU_TESS_END_DATA, GLU_TESS_ERROR, GLU_TESS_ERROR_DATA, GLU_TESS_ERROR1, GLU_TESS_ERROR2, GLU_TESS_ERROR3, GLU_TESS_ERROR4, GLU_TESS_ERROR5, GLU_TESS_ERROR6, GLU_TESS_ERROR7, GLU_TESS_ERROR8, GLU_TESS_MAX_COORD, GLU_TESS_MISSING_BEGIN_CONTOUR, GLU_TESS_MISSING_BEGIN_POLYGON, GLU_TESS_MISSING_END_CONTOUR, GLU_TESS_MISSING_END_POLYGON, GLU_TESS_NEED_COMBINE_CALLBACK, GLU_TESS_TOLERANCE, GLU_TESS_VERTEX, GLU_TESS_VERTEX_DATA, GLU_TESS_WINDING_ABS_GEQ_TWO, GLU_TESS_WINDING_NEGATIVE, GLU_TESS_WINDING_NONZERO, GLU_TESS_WINDING_ODD, GLU_TESS_WINDING_POSITIVE, GLU_TESS_WINDING_RULE, GLU_U_STEP, GLU_UNKNOWN, GLU_V_STEP, GLU_VERSION, GLU_VERTEX
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GLAnimCanvas(GLCapabilities capabilities, int width, int height)
          Constructor Uses the default GLFunc and GLUFunc implementation !
GLAnimCanvas(GLCapabilities capabilities, int width, int height, java.lang.String gl_Name, java.lang.String glu_Name)
          Constructor
GLAnimCanvas(java.awt.GraphicsConfiguration config, GLCapabilities capabilities, int width, int height)
          Constructor Uses the default GLFunc and GLUFunc implementation !
GLAnimCanvas(java.awt.GraphicsConfiguration config, GLCapabilities capabilities, int width, int height, java.lang.String gl_Name, java.lang.String glu_Name)
          Constructor
GLAnimCanvas(int width, int height)
          Constructor Uses the default GLFunc and GLUFunc implementation !
GLAnimCanvas(int width, int height, java.lang.String gl_Name, java.lang.String glu_Name)
          Constructor
 
Method Summary
 void cvsDispose()
          You should call this before releasing/dispose this Window ! Also you can overwrite this class, to dispose your own elements, e.g.
 void freeGLContext()
          Force this thread to release it's GLContext ! To ensure this, this thread enables itself, and calls gljFree(true) to force the release !
 double getFps()
          returns the calculated frames per secounds
 long getFpsDuration()
          returns the calculated duration in millisecs
 long getFpsFrames()
          returns the calculated frames number
static int getGlobalThreadNumber()
           
 double getMaxFps()
          Just get the maximum number of Frames per secounds, which is calculated with the time, one frame needs to render ! this value is avaiable after the thread is started and the first frames are rendered !
 boolean getUseFpsSleep()
           
 boolean getUseRepaint()
           
 boolean getUseYield()
           
 boolean isAlive()
          is the thread alive, means is started and not died ?
 boolean isSuspended()
          is the thread suspended, means is started but waiting, or not alive (ok :-| - but it is practical)
 boolean ownsThread(java.lang.Thread thread)
          Identifies this object with the given thread ..
 void ReInit()
          ReInit should be overwritten by you, to enter your re-initialisation within setSuspended(false)
 void resetFpsCounter()
          resets the Fps Counter
 void run()
          The running loop for animations which initiates the call of display
 void setAnimateFps(double fps)
          Just set the FramePerSecounds for Animation
 void setAnimateFps(double fps, int synFrames)
          Deprecated. Now the frames per seconds are allways calculated, no pre-sync needed.
 void setSuspended(boolean suspend)
          Here we can (re)start or suspend animation ...
 void setSuspended(boolean suspend, boolean reInit)
          Here we can (re)start or suspend animation ...
 void setUseFpsSleep(boolean b)
          The normal behavior is to use FpsSleep But you can overwrite this behavior and drop the Frame Per Secound sleeps - so that much frames are rendered as the machine can do !
 void setUseRepaint(boolean b)
          The normal behavior is to use 'repaint' within the AWT-Event Thread to render.
 void setUseYield(boolean b)
          If useFpsSleep is disabled, the library still performs a Thread.yield() automatically -- use this to disable this
 void setVerboseFps(boolean v)
          Deprecated. Now GLContext.gljClassDebug is used ! calculated, no pre-sync needed.
 void start()
          HERE WE DO HAVE OUR RUNNING THREAD ! WE NEED STUFF LIKE THAT FOR ANIMATION ;-)
 void stop()
          This stops and destroys (deferred) our singleton unique thread !
 void stopFpsCounter()
          stops the Fps Counter and sets all values fot the getFps* methods
 
Methods inherited from class gl4java.awt.GLCanvas
addGLEventListener, componentHidden, componentMoved, componentResized, componentShown, cvsGetHeight, cvsGetWidth, cvsIsInit, destroy, display, doCleanup, finalize, getGL, getGLContext, getGLU, getLastFrameMillis, getListeners, getMinimumSize, getPreferredSize, getTopLevelWindow, init, isGLEnabled, mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased, paint, preInit, removeGLEventListener, reshape, sDisplay, setGLEnabled, setVisible, update, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 
Methods inherited from class java.awt.Canvas
addNotify, getAccessibleContext
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getName, getParent, getPeer, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFont, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, validate
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface gl4java.drawable.GLDrawable
addComponentListener, addFocusListener, addKeyListener, addMouseListener, addMouseMotionListener, getSize, removeComponentListener, removeFocusListener, removeMouseListener, removeMouseMotionListener, repaint
 

Field Detail

FramesPerSec

protected double FramesPerSec
To support frames per scounds, instead of killing the machine :-) A little GUI is supported !
See Also:
run()

mSecPerFrame

protected long mSecPerFrame

globalThreadNumber

protected static int globalThreadNumber

dFpsMilli

protected long dFpsMilli
the delays ..

killme

protected java.lang.Thread killme
The thread for referencing Thread (Animation)
See Also:
stop(), start(), run()

threadSuspended

protected boolean threadSuspended
Instead of using suspend (JAVA2)
See Also:
run()

useRepaint

protected boolean useRepaint

useFpsSleep

protected boolean useFpsSleep

useYield

protected boolean useYield

shallWeRender

protected boolean shallWeRender

isRunning

protected boolean isRunning

forceGLFree

protected boolean forceGLFree
Constructor Detail

GLAnimCanvas

public GLAnimCanvas(int width,
                    int height,
                    java.lang.String gl_Name,
                    java.lang.String glu_Name)
Constructor
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)

GLAnimCanvas

public GLAnimCanvas(int width,
                    int height)
Constructor Uses the default GLFunc and GLUFunc implementation !
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)

GLAnimCanvas

public GLAnimCanvas(GLCapabilities capabilities,
                    int width,
                    int height,
                    java.lang.String gl_Name,
                    java.lang.String glu_Name)
Constructor
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)

GLAnimCanvas

public GLAnimCanvas(GLCapabilities capabilities,
                    int width,
                    int height)
Constructor Uses the default GLFunc and GLUFunc implementation !
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)

GLAnimCanvas

public GLAnimCanvas(java.awt.GraphicsConfiguration config,
                    GLCapabilities capabilities,
                    int width,
                    int height,
                    java.lang.String gl_Name,
                    java.lang.String glu_Name)
Constructor
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)

GLAnimCanvas

public GLAnimCanvas(java.awt.GraphicsConfiguration config,
                    GLCapabilities capabilities,
                    int width,
                    int height)
Constructor Uses the default GLFunc and GLUFunc implementation !
See Also:
GLCanvas.GLCanvas(gl4java.GLCapabilities, int, int, java.lang.String, java.lang.String)
Method Detail

getGlobalThreadNumber

public static int getGlobalThreadNumber()

ReInit

public void ReInit()
ReInit should be overwritten by you, to enter your re-initialisation within setSuspended(false)
Specified by:
ReInit in interface GLRunnable
See Also:
setSuspended(boolean)

setUseRepaint

public void setUseRepaint(boolean b)
The normal behavior is to use 'repaint' within the AWT-Event Thread to render.

If you have serious reasons, e.g. measuring performance, you can change it while invoke this function with 'false'. In this case, the thread itself calls the sDisplay method ! On fast good multi-threading machines (native-thread-JVM), this should increase the performance and the responsiveness !

Parameters:
b - if true, uses repaint (default), otherwise directly sDisplay
See Also:
GLCanvas.sDisplay(), setUseFpsSleep(boolean)

setUseFpsSleep

public void setUseFpsSleep(boolean b)
The normal behavior is to use FpsSleep But you can overwrite this behavior and drop the Frame Per Secound sleeps - so that much frames are rendered as the machine can do !

Parameters:
b - if true, uses Fps sleeping, else not !
See Also:
GLCanvas.sDisplay(), setUseRepaint(boolean)

setUseYield

public void setUseYield(boolean b)
If useFpsSleep is disabled, the library still performs a Thread.yield() automatically -- use this to disable this

getUseRepaint

public boolean getUseRepaint()

getUseFpsSleep

public boolean getUseFpsSleep()

getUseYield

public boolean getUseYield()

ownsThread

public boolean ownsThread(java.lang.Thread thread)
Identifies this object with the given thread .. If this object owns this thread, it must return true !
Specified by:
ownsThread in interface GLRunnable

start

public void start()
HERE WE DO HAVE OUR RUNNING THREAD ! WE NEED STUFF LIKE THAT FOR ANIMATION ;-)
Specified by:
start in interface GLRunnable

stop

public void stop()
Description copied from interface: GLRunnable
This stops and destroys (deferred) our singleton unique thread !
Specified by:
stop in interface GLRunnable

cvsDispose

public void cvsDispose()
You should call this before releasing/dispose this Window ! Also you can overwrite this class, to dispose your own elements, e.g. a Frame etc. - but be shure that you call cvsDispose implementation call this one ! This function calls gljDestroy of GLContext !
Overrides:
cvsDispose in class GLCanvas
See Also:
GLContext.gljDestroy(), GLCanvas.cvsDispose(), GLCanvas.doCleanup()

freeGLContext

public void freeGLContext()
Force this thread to release it's GLContext ! To ensure this, this thread enables itself, and calls gljFree(true) to force the release !
Specified by:
freeGLContext in interface GLRunnable
See Also:
run(), GLContext.gljMakeCurrent()

run

public void run()
The running loop for animations which initiates the call of display
Specified by:
run in interface GLRunnable
See Also:
setSuspended(boolean), GLCanvas.display()

setSuspended

public void setSuspended(boolean suspend)
Here we can (re)start or suspend animation ... If the thread should be (re)started and is not alive -> killed, or never be started, it will be started !
Specified by:
setSuspended in interface GLRunnable
Parameters:
suspend - if true the thread will be suspended, if false, the thread will be (re)started
See Also:
isAlive(), start()

setSuspended

public void setSuspended(boolean suspend,
                         boolean reInit)
Here we can (re)start or suspend animation ... If the thread should be (re)started and is not alive -> killed, or never be started, it will be started !
Specified by:
setSuspended in interface GLRunnable
Parameters:
suspend - if true the thread will be suspended, if false, the thread will be (re)started
reInit - if true the ReInit will be called additionally, where the user can set additional initialisations
See Also:
ReInit(), isAlive(), start(), run()

isAlive

public boolean isAlive()
is the thread alive, means is started and not died ?
Specified by:
isAlive in interface GLRunnable
See Also:
run(), setSuspended(boolean), start(), stop()

isSuspended

public boolean isSuspended()
is the thread suspended, means is started but waiting, or not alive (ok :-| - but it is practical)
Specified by:
isSuspended in interface GLRunnable
See Also:
run(), setSuspended(boolean), start(), stop()

resetFpsCounter

public void resetFpsCounter()
resets the Fps Counter

this function is called automatically by start and after setSuspended suspends the animation thread !

See Also:
start(), setSuspended(boolean), resetFpsCounter(), stopFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean)

stopFpsCounter

public void stopFpsCounter()
stops the Fps Counter and sets all values fot the getFps* methods

this function is called automatically by run, if the thread is suspended via setSuspended(true)

All data's are print out on System.out if GLContext.gljClassDebug is set !

See Also:
run(), setSuspended(boolean), resetFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean)

setVerboseFps

public void setVerboseFps(boolean v)
Deprecated. Now GLContext.gljClassDebug is used ! calculated, no pre-sync needed.

sets if the Fps data shall be printed to System.out while stopFpsCounter is called !

GLContext.gljClassDebug is set to true by default !

See Also:
run(), setSuspended(boolean), resetFpsCounter(), stopFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean), GLContext.gljClassDebug

getFps

public double getFps()
returns the calculated frames per secounds

this data is avaiable after calling stopFpsCounter

See Also:
resetFpsCounter(), stopFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean)

getFpsDuration

public long getFpsDuration()
returns the calculated duration in millisecs

this data is avaiable after calling stopFpsCounter

See Also:
resetFpsCounter(), stopFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean)

getFpsFrames

public long getFpsFrames()
returns the calculated frames number

this data is avaiable after calling stopFpsCounter

See Also:
resetFpsCounter(), stopFpsCounter(), getFps(), getFpsDuration(), getFpsFrames(), setVerboseFps(boolean)

setAnimateFps

public void setAnimateFps(double fps,
                          int synFrames)
Deprecated. Now the frames per seconds are allways calculated, no pre-sync needed.

Just set the FramePerSecounds for Animation
See Also:
setAnimateFps(double)

setAnimateFps

public void setAnimateFps(double fps)
Just set the FramePerSecounds for Animation
See Also:
getMaxFps()

getMaxFps

public double getMaxFps()
Just get the maximum number of Frames per secounds, which is calculated with the time, one frame needs to render ! this value is avaiable after the thread is started and the first frames are rendered !
See Also:
setAnimateFps(double, int)