/* MACHINE GENERATED FILE, DO NOT EDIT */
package org.lwjgl.opengl;
import org.lwjgl.LWJGLException;
import org.lwjgl.LWJGLUtil;
import java.util.Set;
import java.util.HashSet;
public class ContextCapabilities {
static final boolean DEBUG = false;
final StateTracker tracker = new StateTracker();
public final boolean GL_AMD_conservative_depth;
public final boolean GL_AMD_debug_output;
public final boolean GL_AMD_depth_clamp_separate;
public final boolean GL_AMD_draw_buffers_blend;
public final boolean GL_AMD_name_gen_delete;
public final boolean GL_AMD_performance_monitor;
public final boolean GL_AMD_seamless_cubemap_per_texture;
public final boolean GL_AMD_shader_stencil_export;
public final boolean GL_AMD_texture_texture4;
public final boolean GL_AMD_transform_feedback3_lines_triangles;
public final boolean GL_AMD_vertex_shader_tessellator;
public final boolean GL_APPLE_aux_depth_stencil;
public final boolean GL_APPLE_client_storage;
public final boolean GL_APPLE_element_array;
public final boolean GL_APPLE_fence;
public final boolean GL_APPLE_float_pixels;
public final boolean GL_APPLE_flush_buffer_range;
public final boolean GL_APPLE_object_purgeable;
public final boolean GL_APPLE_packed_pixels;
public final boolean GL_APPLE_rgb_422;
public final boolean GL_APPLE_row_bytes;
public final boolean GL_APPLE_texture_range;
public final boolean GL_APPLE_vertex_array_object;
public final boolean GL_APPLE_vertex_array_range;
public final boolean GL_APPLE_vertex_program_evaluators;
public final boolean GL_APPLE_ycbcr_422;
public final boolean GL_ARB_ES2_compatibility;
public final boolean GL_ARB_blend_func_extended;
public final boolean GL_ARB_cl_event;
public final boolean GL_ARB_color_buffer_float;
public final boolean GL_ARB_compatibility;
public final boolean GL_ARB_copy_buffer;
public final boolean GL_ARB_debug_output;
public final boolean GL_ARB_depth_buffer_float;
public final boolean GL_ARB_depth_clamp;
public final boolean GL_ARB_depth_texture;
public final boolean GL_ARB_draw_buffers;
public final boolean GL_ARB_draw_buffers_blend;
public final boolean GL_ARB_draw_elements_base_vertex;
public final boolean GL_ARB_draw_indirect;
public final boolean GL_ARB_draw_instanced;
public final boolean GL_ARB_explicit_attrib_location;
public final boolean GL_ARB_fragment_coord_conventions;
public final boolean GL_ARB_fragment_program;
public final boolean GL_ARB_fragment_program_shadow;
public final boolean GL_ARB_fragment_shader;
public final boolean GL_ARB_framebuffer_object;
public final boolean GL_ARB_framebuffer_sRGB;
public final boolean GL_ARB_geometry_shader4;
public final boolean GL_ARB_get_program_binary;
public final boolean GL_ARB_gpu_shader5;
public final boolean GL_ARB_gpu_shader_fp64;
public final boolean GL_ARB_half_float_pixel;
public final boolean GL_ARB_half_float_vertex;
public final boolean GL_ARB_imaging;
public final boolean GL_ARB_instanced_arrays;
public final boolean GL_ARB_map_buffer_range;
public final boolean GL_ARB_matrix_palette;
public final boolean GL_ARB_multisample;
public final boolean GL_ARB_multitexture;
public final boolean GL_ARB_occlusion_query;
public final boolean GL_ARB_occlusion_query2;
public final boolean GL_ARB_pixel_buffer_object;
public final boolean GL_ARB_point_parameters;
public final boolean GL_ARB_point_sprite;
public final boolean GL_ARB_provoking_vertex;
public final boolean GL_ARB_robustness;
public final boolean GL_ARB_sample_shading;
public final boolean GL_ARB_sampler_objects;
public final boolean GL_ARB_seamless_cube_map;
public final boolean GL_ARB_separate_shader_objects;
public final boolean GL_ARB_shader_bit_encoding;
public final boolean GL_ARB_shader_objects;
public final boolean GL_ARB_shader_precision;
public final boolean GL_ARB_shader_stencil_export;
public final boolean GL_ARB_shader_subroutine;
public final boolean GL_ARB_shader_texture_lod;
public final boolean GL_ARB_shading_language_100;
public final boolean GL_ARB_shading_language_include;
public final boolean GL_ARB_shadow;
public final boolean GL_ARB_shadow_ambient;
public final boolean GL_ARB_sync;
public final boolean GL_ARB_tessellation_shader;
public final boolean GL_ARB_texture_border_clamp;
public final boolean GL_ARB_texture_buffer_object;
public final boolean GL_ARB_texture_buffer_object_rgb32;
public final boolean GL_ARB_texture_compression;
public final boolean GL_ARB_texture_compression_bptc;
public final boolean GL_ARB_texture_compression_rgtc;
public final boolean GL_ARB_texture_cube_map;
public final boolean GL_ARB_texture_cube_map_array;
public final boolean GL_ARB_texture_env_add;
public final boolean GL_ARB_texture_env_combine;
public final boolean GL_ARB_texture_env_crossbar;
public final boolean GL_ARB_texture_env_dot3;
public final boolean GL_ARB_texture_float;
public final boolean GL_ARB_texture_gather;
public final boolean GL_ARB_texture_mirrored_repeat;
public final boolean GL_ARB_texture_multisample;
public final boolean GL_ARB_texture_non_power_of_two;
public final boolean GL_ARB_texture_query_lod;
public final boolean GL_ARB_texture_rectangle;
public final boolean GL_ARB_texture_rg;
public final boolean GL_ARB_texture_rgb10_a2ui;
public final boolean GL_ARB_texture_swizzle;
public final boolean GL_ARB_timer_query;
public final boolean GL_ARB_transform_feedback2;
public final boolean GL_ARB_transform_feedback3;
public final boolean GL_ARB_transpose_matrix;
public final boolean GL_ARB_uniform_buffer_object;
public final boolean GL_ARB_vertex_array_bgra;
public final boolean GL_ARB_vertex_array_object;
public final boolean GL_ARB_vertex_attrib_64bit;
public final boolean GL_ARB_vertex_blend;
public final boolean GL_ARB_vertex_buffer_object;
public final boolean GL_ARB_vertex_program;
public final boolean GL_ARB_vertex_shader;
public final boolean GL_ARB_vertex_type_2_10_10_10_rev;
public final boolean GL_ARB_viewport_array;
public final boolean GL_ARB_window_pos;
public final boolean GL_ATI_draw_buffers;
public final boolean GL_ATI_element_array;
public final boolean GL_ATI_envmap_bumpmap;
public final boolean GL_ATI_fragment_shader;
public final boolean GL_ATI_map_object_buffer;
public final boolean GL_ATI_meminfo;
public final boolean GL_ATI_pn_triangles;
public final boolean GL_ATI_separate_stencil;
public final boolean GL_ATI_shader_texture_lod;
public final boolean GL_ATI_text_fragment_shader;
public final boolean GL_ATI_texture_compression_3dc;
public final boolean GL_ATI_texture_env_combine3;
public final boolean GL_ATI_texture_float;
public final boolean GL_ATI_texture_mirror_once;
public final boolean GL_ATI_vertex_array_object;
public final boolean GL_ATI_vertex_attrib_array_object;
public final boolean GL_ATI_vertex_streams;
public final boolean GL_EXT_abgr;
public final boolean GL_EXT_bgra;
public final boolean GL_EXT_bindable_uniform;
public final boolean GL_EXT_blend_color;
public final boolean GL_EXT_blend_equation_separate;
public final boolean GL_EXT_blend_func_separate;
public final boolean GL_EXT_blend_minmax;
public final boolean GL_EXT_blend_subtract;
public final boolean GL_EXT_Cg_shader;
public final boolean GL_EXT_compiled_vertex_array;
public final boolean GL_EXT_depth_bounds_test;
public final boolean GL_EXT_direct_state_access;
public final boolean GL_EXT_draw_buffers2;
public final boolean GL_EXT_draw_instanced;
public final boolean GL_EXT_draw_range_elements;
public final boolean GL_EXT_fog_coord;
public final boolean GL_EXT_framebuffer_blit;
public final boolean GL_EXT_framebuffer_multisample;
public final boolean GL_EXT_framebuffer_object;
public final boolean GL_EXT_framebuffer_sRGB;
public final boolean GL_EXT_geometry_shader4;
public final boolean GL_EXT_gpu_program_parameters;
public final boolean GL_EXT_gpu_shader4;
public final boolean GL_EXT_multi_draw_arrays;
public final boolean GL_EXT_packed_depth_stencil;
public final boolean GL_EXT_packed_float;
public final boolean GL_EXT_packed_pixels;
public final boolean GL_EXT_paletted_texture;
public final boolean GL_EXT_pixel_buffer_object;
public final boolean GL_EXT_point_parameters;
public final boolean GL_EXT_provoking_vertex;
public final boolean GL_EXT_rescale_normal;
public final boolean GL_EXT_secondary_color;
public final boolean GL_EXT_separate_shader_objects;
public final boolean GL_EXT_separate_specular_color;
public final boolean GL_EXT_shader_image_load_store;
public final boolean GL_EXT_shadow_funcs;
public final boolean GL_EXT_shared_texture_palette;
public final boolean GL_EXT_stencil_clear_tag;
public final boolean GL_EXT_stencil_two_side;
public final boolean GL_EXT_stencil_wrap;
public final boolean GL_EXT_texture_3d;
public final boolean GL_EXT_texture_array;
public final boolean GL_EXT_texture_buffer_object;
public final boolean GL_EXT_texture_compression_latc;
public final boolean GL_EXT_texture_compression_rgtc;
public final boolean GL_EXT_texture_compression_s3tc;
public final boolean GL_EXT_texture_env_combine;
public final boolean GL_EXT_texture_env_dot3;
public final boolean GL_EXT_texture_filter_anisotropic;
public final boolean GL_EXT_texture_integer;
public final boolean GL_EXT_texture_lod_bias;
public final boolean GL_EXT_texture_mirror_clamp;
public final boolean GL_EXT_texture_rectangle;
public final boolean GL_EXT_texture_sRGB;
public final boolean GL_EXT_texture_sRGB_decode;
public final boolean GL_EXT_texture_shared_exponent;
public final boolean GL_EXT_texture_snorm;
public final boolean GL_EXT_texture_swizzle;
public final boolean GL_EXT_timer_query;
public final boolean GL_EXT_transform_feedback;
public final boolean GL_EXT_vertex_array_bgra;
public final boolean GL_EXT_vertex_attrib_64bit;
public final boolean GL_EXT_vertex_shader;
public final boolean GL_EXT_vertex_weighting;
public final boolean OpenGL11;
public final boolean OpenGL12;
public final boolean OpenGL13;
public final boolean OpenGL14;
public final boolean OpenGL15;
public final boolean OpenGL20;
public final boolean OpenGL21;
public final boolean OpenGL30;
public final boolean OpenGL31;
public final boolean OpenGL32;
public final boolean OpenGL33;
public final boolean OpenGL40;
public final boolean OpenGL41;
public final boolean GL_GREMEDY_string_marker;
public final boolean GL_HP_occlusion_test;
public final boolean GL_IBM_rasterpos_clip;
public final boolean GL_NVX_gpu_memory_info;
public final boolean GL_NV_blend_square;
public final boolean GL_NV_conditional_render;
public final boolean GL_NV_copy_depth_to_color;
public final boolean GL_NV_copy_image;
public final boolean GL_NV_depth_buffer_float;
public final boolean GL_NV_depth_clamp;
public final boolean GL_NV_evaluators;
public final boolean GL_NV_explicit_multisample;
public final boolean GL_NV_fence;
public final boolean GL_NV_float_buffer;
public final boolean GL_NV_fog_distance;
public final boolean GL_NV_fragment_program;
public final boolean GL_NV_fragment_program2;
public final boolean GL_NV_fragment_program4;
public final boolean GL_NV_fragment_program_option;
public final boolean GL_NV_framebuffer_multisample_coverage;
public final boolean GL_NV_geometry_program4;
public final boolean GL_NV_geometry_shader4;
public final boolean GL_NV_gpu_program4;
public final boolean GL_NV_gpu_program5;
public final boolean GL_NV_gpu_shader5;
public final boolean GL_NV_half_float;
public final boolean GL_NV_light_max_exponent;
public final boolean GL_NV_multisample_coverage;
public final boolean GL_NV_multisample_filter_hint;
public final boolean GL_NV_occlusion_query;
public final boolean GL_NV_packed_depth_stencil;
public final boolean GL_NV_parameter_buffer_object;
public final boolean GL_NV_parameter_buffer_object2;
public final boolean GL_NV_pixel_data_range;
public final boolean GL_NV_point_sprite;
public final boolean GL_NV_primitive_restart;
public final boolean GL_NV_register_combiners;
public final boolean GL_NV_register_combiners2;
public final boolean GL_NV_shader_buffer_load;
public final boolean GL_NV_shader_buffer_store;
public final boolean GL_NV_tessellation_program5;
public final boolean GL_NV_texgen_reflection;
public final boolean GL_NV_texture_barrier;
public final boolean GL_NV_texture_compression_vtc;
public final boolean GL_NV_texture_env_combine4;
public final boolean GL_NV_texture_expand_normal;
public final boolean GL_NV_texture_rectangle;
public final boolean GL_NV_texture_shader;
public final boolean GL_NV_texture_shader2;
public final boolean GL_NV_texture_shader3;
public final boolean GL_NV_transform_feedback;
public final boolean GL_NV_transform_feedback2;
public final boolean GL_NV_vertex_array_range;
public final boolean GL_NV_vertex_array_range2;
public final boolean GL_NV_vertex_attrib_integer_64bit;
public final boolean GL_NV_vertex_buffer_unified_memory;
public final boolean GL_NV_vertex_program;
public final boolean GL_NV_vertex_program1_1;
public final boolean GL_NV_vertex_program2;
public final boolean GL_NV_vertex_program2_option;
public final boolean GL_NV_vertex_program3;
public final boolean GL_NV_vertex_program4;
public final boolean GL_SGIS_generate_mipmap;
public final boolean GL_SGIS_texture_lod;
public final boolean GL_SUN_slice_accum;
// AMD_debug_output
long glDebugMessageEnableAMD;
long glDebugMessageInsertAMD;
long glDebugMessageCallbackAMD;
long glGetDebugMessageLogAMD;
// AMD_draw_buffers_blend
long glBlendFuncIndexedAMD;
long glBlendFuncSeparateIndexedAMD;
long glBlendEquationIndexedAMD;
long glBlendEquationSeparateIndexedAMD;
// AMD_name_gen_delete
long glGenNamesAMD;
long glDeleteNamesAMD;
long glIsNameAMD;
// AMD_performance_monitor
long glGetPerfMonitorGroupsAMD;
long glGetPerfMonitorCountersAMD;
long glGetPerfMonitorGroupStringAMD;
long glGetPerfMonitorCounterStringAMD;
long glGetPerfMonitorCounterInfoAMD;
long glGenPerfMonitorsAMD;
long glDeletePerfMonitorsAMD;
long glSelectPerfMonitorCountersAMD;
long glBeginPerfMonitorAMD;
long glEndPerfMonitorAMD;
long glGetPerfMonitorCounterDataAMD;
// AMD_vertex_shader_tessellator
long glTessellationFactorAMD;
long glTessellationModeAMD;
// APPLE_element_array
long glElementPointerAPPLE;
long glDrawElementArrayAPPLE;
long glDrawRangeElementArrayAPPLE;
long glMultiDrawElementArrayAPPLE;
long glMultiDrawRangeElementArrayAPPLE;
// APPLE_fence
long glGenFencesAPPLE;
long glDeleteFencesAPPLE;
long glSetFenceAPPLE;
long glIsFenceAPPLE;
long glTestFenceAPPLE;
long glFinishFenceAPPLE;
long glTestObjectAPPLE;
long glFinishObjectAPPLE;
// APPLE_flush_buffer_range
long glBufferParameteriAPPLE;
long glFlushMappedBufferRangeAPPLE;
// APPLE_object_purgeable
long glObjectPurgeableAPPLE;
long glObjectUnpurgeableAPPLE;
long glGetObjectParameterivAPPLE;
// APPLE_texture_range
long glTextureRangeAPPLE;
long glGetTexParameterPointervAPPLE;
// APPLE_vertex_array_object
long glBindVertexArrayAPPLE;
long glDeleteVertexArraysAPPLE;
long glGenVertexArraysAPPLE;
long glIsVertexArrayAPPLE;
// APPLE_vertex_array_range
long glVertexArrayRangeAPPLE;
long glFlushVertexArrayRangeAPPLE;
long glVertexArrayParameteriAPPLE;
// APPLE_vertex_program_evaluators
long glEnableVertexAttribAPPLE;
long glDisableVertexAttribAPPLE;
long glIsVertexAttribEnabledAPPLE;
long glMapVertexAttrib1dAPPLE;
long glMapVertexAttrib1fAPPLE;
long glMapVertexAttrib2dAPPLE;
long glMapVertexAttrib2fAPPLE;
// ARB_buffer_object
long glBindBufferARB;
long glDeleteBuffersARB;
long glGenBuffersARB;
long glIsBufferARB;
long glBufferDataARB;
long glBufferSubDataARB;
long glGetBufferSubDataARB;
long glMapBufferARB;
long glUnmapBufferARB;
long glGetBufferParameterivARB;
long glGetBufferPointervARB;
// ARB_cl_event
long glCreateSyncFromCLeventARB;
// ARB_color_buffer_float
long glClampColorARB;
// ARB_debug_output
long glDebugMessageControlARB;
long glDebugMessageInsertARB;
long glDebugMessageCallbackARB;
long glGetDebugMessageLogARB;
// ARB_draw_buffers
long glDrawBuffersARB;
// ARB_draw_buffers_blend
long glBlendEquationiARB;
long glBlendEquationSeparateiARB;
long glBlendFunciARB;
long glBlendFuncSeparateiARB;
// ARB_draw_instanced
long glDrawArraysInstancedARB;
long glDrawElementsInstancedARB;
// ARB_geometry_shader4
long glProgramParameteriARB;
long glFramebufferTextureARB;
long glFramebufferTextureLayerARB;
long glFramebufferTextureFaceARB;
// ARB_gpu_shader_fp64
long glProgramUniform1dEXT;
long glProgramUniform2dEXT;
long glProgramUniform3dEXT;
long glProgramUniform4dEXT;
long glProgramUniform1dvEXT;
long glProgramUniform2dvEXT;
long glProgramUniform3dvEXT;
long glProgramUniform4dvEXT;
long glProgramUniformMatrix2dvEXT;
long glProgramUniformMatrix3dvEXT;
long glProgramUniformMatrix4dvEXT;
long glProgramUniformMatrix2x3dvEXT;
long glProgramUniformMatrix2x4dvEXT;
long glProgramUniformMatrix3x2dvEXT;
long glProgramUniformMatrix3x4dvEXT;
long glProgramUniformMatrix4x2dvEXT;
long glProgramUniformMatrix4x3dvEXT;
// ARB_imaging
long glColorTable;
long glColorSubTable;
long glColorTableParameteriv;
long glColorTableParameterfv;
long glCopyColorSubTable;
long glCopyColorTable;
long glGetColorTable;
long glGetColorTableParameteriv;
long glGetColorTableParameterfv;
long glHistogram;
long glResetHistogram;
long glGetHistogram;
long glGetHistogramParameterfv;
long glGetHistogramParameteriv;
long glMinmax;
long glResetMinmax;
long glGetMinmax;
long glGetMinmaxParameterfv;
long glGetMinmaxParameteriv;
long glConvolutionFilter1D;
long glConvolutionFilter2D;
long glConvolutionParameterf;
long glConvolutionParameterfv;
long glConvolutionParameteri;
long glConvolutionParameteriv;
long glCopyConvolutionFilter1D;
long glCopyConvolutionFilter2D;
long glGetConvolutionFilter;
long glGetConvolutionParameterfv;
long glGetConvolutionParameteriv;
long glSeparableFilter2D;
long glGetSeparableFilter;
// ARB_instanced_arrays
long glVertexAttribDivisorARB;
// ARB_matrix_palette
long glCurrentPaletteMatrixARB;
long glMatrixIndexPointerARB;
long glMatrixIndexubvARB;
long glMatrixIndexusvARB;
long glMatrixIndexuivARB;
// ARB_multisample
long glSampleCoverageARB;
// ARB_multitexture
long glClientActiveTextureARB;
long glActiveTextureARB;
long glMultiTexCoord1fARB;
long glMultiTexCoord1dARB;
long glMultiTexCoord1iARB;
long glMultiTexCoord1sARB;
long glMultiTexCoord2fARB;
long glMultiTexCoord2dARB;
long glMultiTexCoord2iARB;
long glMultiTexCoord2sARB;
long glMultiTexCoord3fARB;
long glMultiTexCoord3dARB;
long glMultiTexCoord3iARB;
long glMultiTexCoord3sARB;
long glMultiTexCoord4fARB;
long glMultiTexCoord4dARB;
long glMultiTexCoord4iARB;
long glMultiTexCoord4sARB;
// ARB_occlusion_query
long glGenQueriesARB;
long glDeleteQueriesARB;
long glIsQueryARB;
long glBeginQueryARB;
long glEndQueryARB;
long glGetQueryivARB;
long glGetQueryObjectivARB;
long glGetQueryObjectuivARB;
// ARB_point_parameters
long glPointParameterfARB;
long glPointParameterfvARB;
// ARB_program
long glProgramStringARB;
long glBindProgramARB;
long glDeleteProgramsARB;
long glGenProgramsARB;
long glProgramEnvParameter4fARB;
long glProgramEnvParameter4dARB;
long glProgramEnvParameter4fvARB;
long glProgramEnvParameter4dvARB;
long glProgramLocalParameter4fARB;
long glProgramLocalParameter4dARB;
long glProgramLocalParameter4fvARB;
long glProgramLocalParameter4dvARB;
long glGetProgramEnvParameterfvARB;
long glGetProgramEnvParameterdvARB;
long glGetProgramLocalParameterfvARB;
long glGetProgramLocalParameterdvARB;
long glGetProgramivARB;
long glGetProgramStringARB;
long glIsProgramARB;
// ARB_robustness
long glGetGraphicsResetStatusARB;
long glGetnMapdvARB;
long glGetnMapfvARB;
long glGetnMapivARB;
long glGetnPixelMapfvARB;
long glGetnPixelMapuivARB;
long glGetnPixelMapusvARB;
long glGetnPolygonStippleARB;
long glGetnTexImageARB;
long glReadnPixelsARB;
long glGetnColorTableARB;
long glGetnConvolutionFilterARB;
long glGetnSeparableFilterARB;
long glGetnHistogramARB;
long glGetnMinmaxARB;
long glGetnCompressedTexImageARB;
long glGetnUniformfvARB;
long glGetnUniformivARB;
long glGetnUniformuivARB;
long glGetnUniformdvARB;
// ARB_sample_shading
long glMinSampleShadingARB;
// ARB_shader_objects
long glDeleteObjectARB;
long glGetHandleARB;
long glDetachObjectARB;
long glCreateShaderObjectARB;
long glShaderSourceARB;
long glCompileShaderARB;
long glCreateProgramObjectARB;
long glAttachObjectARB;
long glLinkProgramARB;
long glUseProgramObjectARB;
long glValidateProgramARB;
long glUniform1fARB;
long glUniform2fARB;
long glUniform3fARB;
long glUniform4fARB;
long glUniform1iARB;
long glUniform2iARB;
long glUniform3iARB;
long glUniform4iARB;
long glUniform1fvARB;
long glUniform2fvARB;
long glUniform3fvARB;
long glUniform4fvARB;
long glUniform1ivARB;
long glUniform2ivARB;
long glUniform3ivARB;
long glUniform4ivARB;
long glUniformMatrix2fvARB;
long glUniformMatrix3fvARB;
long glUniformMatrix4fvARB;
long glGetObjectParameterfvARB;
long glGetObjectParameterivARB;
long glGetInfoLogARB;
long glGetAttachedObjectsARB;
long glGetUniformLocationARB;
long glGetActiveUniformARB;
long glGetUniformfvARB;
long glGetUniformivARB;
long glGetShaderSourceARB;
// ARB_shading_language_include
long glNamedStringARB;
long glDeleteNamedStringARB;
long glCompileShaderIncludeARB;
long glIsNamedStringARB;
long glGetNamedStringARB;
long glGetNamedStringivARB;
// ARB_texture_buffer_object
long glTexBufferARB;
// ARB_texture_compression
long glCompressedTexImage1DARB;
long glCompressedTexImage2DARB;
long glCompressedTexImage3DARB;
long glCompressedTexSubImage1DARB;
long glCompressedTexSubImage2DARB;
long glCompressedTexSubImage3DARB;
long glGetCompressedTexImageARB;
// ARB_transpose_matrix
long glLoadTransposeMatrixfARB;
long glMultTransposeMatrixfARB;
// ARB_vertex_attrib_64bit
long glVertexArrayVertexAttribLOffsetEXT;
// ARB_vertex_blend
long glWeightbvARB;
long glWeightsvARB;
long glWeightivARB;
long glWeightfvARB;
long glWeightdvARB;
long glWeightubvARB;
long glWeightusvARB;
long glWeightuivARB;
long glWeightPointerARB;
long glVertexBlendARB;
// ARB_vertex_shader
long glVertexAttrib1sARB;
long glVertexAttrib1fARB;
long glVertexAttrib1dARB;
long glVertexAttrib2sARB;
long glVertexAttrib2fARB;
long glVertexAttrib2dARB;
long glVertexAttrib3sARB;
long glVertexAttrib3fARB;
long glVertexAttrib3dARB;
long glVertexAttrib4sARB;
long glVertexAttrib4fARB;
long glVertexAttrib4dARB;
long glVertexAttrib4NubARB;
long glVertexAttribPointerARB;
long glEnableVertexAttribArrayARB;
long glDisableVertexAttribArrayARB;
long glBindAttribLocationARB;
long glGetActiveAttribARB;
long glGetAttribLocationARB;
long glGetVertexAttribfvARB;
long glGetVertexAttribdvARB;
long glGetVertexAttribivARB;
long glGetVertexAttribPointervARB;
// ARB_window_pos
long glWindowPos2fARB;
long glWindowPos2dARB;
long glWindowPos2iARB;
long glWindowPos2sARB;
long glWindowPos3fARB;
long glWindowPos3dARB;
long glWindowPos3iARB;
long glWindowPos3sARB;
// ATI_draw_buffers
long glDrawBuffersATI;
// ATI_element_array
long glElementPointerATI;
long glDrawElementArrayATI;
long glDrawRangeElementArrayATI;
// ATI_envmap_bumpmap
long glTexBumpParameterfvATI;
long glTexBumpParameterivATI;
long glGetTexBumpParameterfvATI;
long glGetTexBumpParameterivATI;
// ATI_fragment_shader
long glGenFragmentShadersATI;
long glBindFragmentShaderATI;
long glDeleteFragmentShaderATI;
long glBeginFragmentShaderATI;
long glEndFragmentShaderATI;
long glPassTexCoordATI;
long glSampleMapATI;
long glColorFragmentOp1ATI;
long glColorFragmentOp2ATI;
long glColorFragmentOp3ATI;
long glAlphaFragmentOp1ATI;
long glAlphaFragmentOp2ATI;
long glAlphaFragmentOp3ATI;
long glSetFragmentShaderConstantATI;
// ATI_map_object_buffer
long glMapObjectBufferATI;
long glUnmapObjectBufferATI;
// ATI_pn_triangles
long glPNTrianglesfATI;
long glPNTrianglesiATI;
// ATI_separate_stencil
long glStencilOpSeparateATI;
long glStencilFuncSeparateATI;
// ATI_vertex_array_object
long glNewObjectBufferATI;
long glIsObjectBufferATI;
long glUpdateObjectBufferATI;
long glGetObjectBufferfvATI;
long glGetObjectBufferivATI;
long glFreeObjectBufferATI;
long glArrayObjectATI;
long glGetArrayObjectfvATI;
long glGetArrayObjectivATI;
long glVariantArrayObjectATI;
long glGetVariantArrayObjectfvATI;
long glGetVariantArrayObjectivATI;
// ATI_vertex_attrib_array_object
long glVertexAttribArrayObjectATI;
long glGetVertexAttribArrayObjectfvATI;
long glGetVertexAttribArrayObjectivATI;
// ATI_vertex_streams
long glVertexStream2fATI;
long glVertexStream2dATI;
long glVertexStream2iATI;
long glVertexStream2sATI;
long glVertexStream3fATI;
long glVertexStream3dATI;
long glVertexStream3iATI;
long glVertexStream3sATI;
long glVertexStream4fATI;
long glVertexStream4dATI;
long glVertexStream4iATI;
long glVertexStream4sATI;
long glNormalStream3bATI;
long glNormalStream3fATI;
long glNormalStream3dATI;
long glNormalStream3iATI;
long glNormalStream3sATI;
long glClientActiveVertexStreamATI;
long glVertexBlendEnvfATI;
long glVertexBlendEnviATI;
// EXT_bindable_uniform
long glUniformBufferEXT;
long glGetUniformBufferSizeEXT;
long glGetUniformOffsetEXT;
// EXT_blend_color
long glBlendColorEXT;
// EXT_blend_equation_separate
long glBlendEquationSeparateEXT;
// EXT_blend_func_separate
long glBlendFuncSeparateEXT;
// EXT_blend_minmax
long glBlendEquationEXT;
// EXT_compiled_vertex_array
long glLockArraysEXT;
long glUnlockArraysEXT;
// EXT_depth_bounds_test
long glDepthBoundsEXT;
// EXT_direct_state_access
long glClientAttribDefaultEXT;
long glPushClientAttribDefaultEXT;
long glMatrixLoadfEXT;
long glMatrixLoaddEXT;
long glMatrixMultfEXT;
long glMatrixMultdEXT;
long glMatrixLoadIdentityEXT;
long glMatrixRotatefEXT;
long glMatrixRotatedEXT;
long glMatrixScalefEXT;
long glMatrixScaledEXT;
long glMatrixTranslatefEXT;
long glMatrixTranslatedEXT;
long glMatrixOrthoEXT;
long glMatrixFrustumEXT;
long glMatrixPushEXT;
long glMatrixPopEXT;
long glTextureParameteriEXT;
long glTextureParameterivEXT;
long glTextureParameterfEXT;
long glTextureParameterfvEXT;
long glTextureImage1DEXT;
long glTextureImage2DEXT;
long glTextureSubImage1DEXT;
long glTextureSubImage2DEXT;
long glCopyTextureImage1DEXT;
long glCopyTextureImage2DEXT;
long glCopyTextureSubImage1DEXT;
long glCopyTextureSubImage2DEXT;
long glGetTextureImageEXT;
long glGetTextureParameterfvEXT;
long glGetTextureParameterivEXT;
long glGetTextureLevelParameterfvEXT;
long glGetTextureLevelParameterivEXT;
long glTextureImage3DEXT;
long glTextureSubImage3DEXT;
long glCopyTextureSubImage3DEXT;
long glBindMultiTextureEXT;
long glMultiTexCoordPointerEXT;
long glMultiTexEnvfEXT;
long glMultiTexEnvfvEXT;
long glMultiTexEnviEXT;
long glMultiTexEnvivEXT;
long glMultiTexGendEXT;
long glMultiTexGendvEXT;
long glMultiTexGenfEXT;
long glMultiTexGenfvEXT;
long glMultiTexGeniEXT;
long glMultiTexGenivEXT;
long glGetMultiTexEnvfvEXT;
long glGetMultiTexEnvivEXT;
long glGetMultiTexGendvEXT;
long glGetMultiTexGenfvEXT;
long glGetMultiTexGenivEXT;
long glMultiTexParameteriEXT;
long glMultiTexParameterivEXT;
long glMultiTexParameterfEXT;
long glMultiTexParameterfvEXT;
long glMultiTexImage1DEXT;
long glMultiTexImage2DEXT;
long glMultiTexSubImage1DEXT;
long glMultiTexSubImage2DEXT;
long glCopyMultiTexImage1DEXT;
long glCopyMultiTexImage2DEXT;
long glCopyMultiTexSubImage1DEXT;
long glCopyMultiTexSubImage2DEXT;
long glGetMultiTexImageEXT;
long glGetMultiTexParameterfvEXT;
long glGetMultiTexParameterivEXT;
long glGetMultiTexLevelParameterfvEXT;
long glGetMultiTexLevelParameterivEXT;
long glMultiTexImage3DEXT;
long glMultiTexSubImage3DEXT;
long glCopyMultiTexSubImage3DEXT;
long glEnableClientStateIndexedEXT;
long glDisableClientStateIndexedEXT;
long glEnableClientStateiEXT;
long glDisableClientStateiEXT;
long glGetFloatIndexedvEXT;
long glGetDoubleIndexedvEXT;
long glGetPointerIndexedvEXT;
long glGetFloati_vEXT;
long glGetDoublei_vEXT;
long glGetPointeri_vEXT;
long glNamedProgramStringEXT;
long glNamedProgramLocalParameter4dEXT;
long glNamedProgramLocalParameter4dvEXT;
long glNamedProgramLocalParameter4fEXT;
long glNamedProgramLocalParameter4fvEXT;
long glGetNamedProgramLocalParameterdvEXT;
long glGetNamedProgramLocalParameterfvEXT;
long glGetNamedProgramivEXT;
long glGetNamedProgramStringEXT;
long glCompressedTextureImage3DEXT;
long glCompressedTextureImage2DEXT;
long glCompressedTextureImage1DEXT;
long glCompressedTextureSubImage3DEXT;
long glCompressedTextureSubImage2DEXT;
long glCompressedTextureSubImage1DEXT;
long glGetCompressedTextureImageEXT;
long glCompressedMultiTexImage3DEXT;
long glCompressedMultiTexImage2DEXT;
long glCompressedMultiTexImage1DEXT;
long glCompressedMultiTexSubImage3DEXT;
long glCompressedMultiTexSubImage2DEXT;
long glCompressedMultiTexSubImage1DEXT;
long glGetCompressedMultiTexImageEXT;
long glMatrixLoadTransposefEXT;
long glMatrixLoadTransposedEXT;
long glMatrixMultTransposefEXT;
long glMatrixMultTransposedEXT;
long glNamedBufferDataEXT;
long glNamedBufferSubDataEXT;
long glMapNamedBufferEXT;
long glUnmapNamedBufferEXT;
long glGetNamedBufferParameterivEXT;
long glGetNamedBufferPointervEXT;
long glGetNamedBufferSubDataEXT;
long glProgramUniform1fEXT;
long glProgramUniform2fEXT;
long glProgramUniform3fEXT;
long glProgramUniform4fEXT;
long glProgramUniform1iEXT;
long glProgramUniform2iEXT;
long glProgramUniform3iEXT;
long glProgramUniform4iEXT;
long glProgramUniform1fvEXT;
long glProgramUniform2fvEXT;
long glProgramUniform3fvEXT;
long glProgramUniform4fvEXT;
long glProgramUniform1ivEXT;
long glProgramUniform2ivEXT;
long glProgramUniform3ivEXT;
long glProgramUniform4ivEXT;
long glProgramUniformMatrix2fvEXT;
long glProgramUniformMatrix3fvEXT;
long glProgramUniformMatrix4fvEXT;
long glProgramUniformMatrix2x3fvEXT;
long glProgramUniformMatrix3x2fvEXT;
long glProgramUniformMatrix2x4fvEXT;
long glProgramUniformMatrix4x2fvEXT;
long glProgramUniformMatrix3x4fvEXT;
long glProgramUniformMatrix4x3fvEXT;
long glTextureBufferEXT;
long glMultiTexBufferEXT;
long glTextureParameterIivEXT;
long glTextureParameterIuivEXT;
long glGetTextureParameterIivEXT;
long glGetTextureParameterIuivEXT;
long glMultiTexParameterIivEXT;
long glMultiTexParameterIuivEXT;
long glGetMultiTexParameterIivEXT;
long glGetMultiTexParameterIuivEXT;
long glProgramUniform1uiEXT;
long glProgramUniform2uiEXT;
long glProgramUniform3uiEXT;
long glProgramUniform4uiEXT;
long glProgramUniform1uivEXT;
long glProgramUniform2uivEXT;
long glProgramUniform3uivEXT;
long glProgramUniform4uivEXT;
long glNamedProgramLocalParameters4fvEXT;
long glNamedProgramLocalParameterI4iEXT;
long glNamedProgramLocalParameterI4ivEXT;
long glNamedProgramLocalParametersI4ivEXT;
long glNamedProgramLocalParameterI4uiEXT;
long glNamedProgramLocalParameterI4uivEXT;
long glNamedProgramLocalParametersI4uivEXT;
long glGetNamedProgramLocalParameterIivEXT;
long glGetNamedProgramLocalParameterIuivEXT;
long glNamedRenderbufferStorageEXT;
long glGetNamedRenderbufferParameterivEXT;
long glNamedRenderbufferStorageMultisampleEXT;
long glNamedRenderbufferStorageMultisampleCoverageEXT;
long glCheckNamedFramebufferStatusEXT;
long glNamedFramebufferTexture1DEXT;
long glNamedFramebufferTexture2DEXT;
long glNamedFramebufferTexture3DEXT;
long glNamedFramebufferRenderbufferEXT;
long glGetNamedFramebufferAttachmentParameterivEXT;
long glGenerateTextureMipmapEXT;
long glGenerateMultiTexMipmapEXT;
long glFramebufferDrawBufferEXT;
long glFramebufferDrawBuffersEXT;
long glFramebufferReadBufferEXT;
long glGetFramebufferParameterivEXT;
long glNamedCopyBufferSubDataEXT;
long glNamedFramebufferTextureEXT;
long glNamedFramebufferTextureLayerEXT;
long glNamedFramebufferTextureFaceEXT;
long glTextureRenderbufferEXT;
long glMultiTexRenderbufferEXT;
long glVertexArrayVertexOffsetEXT;
long glVertexArrayColorOffsetEXT;
long glVertexArrayEdgeFlagOffsetEXT;
long glVertexArrayIndexOffsetEXT;
long glVertexArrayNormalOffsetEXT;
long glVertexArrayTexCoordOffsetEXT;
long glVertexArrayMultiTexCoordOffsetEXT;
long glVertexArrayFogCoordOffsetEXT;
long glVertexArraySecondaryColorOffsetEXT;
long glVertexArrayVertexAttribOffsetEXT;
long glVertexArrayVertexAttribIOffsetEXT;
long glEnableVertexArrayEXT;
long glDisableVertexArrayEXT;
long glEnableVertexArrayAttribEXT;
long glDisableVertexArrayAttribEXT;
long glGetVertexArrayIntegervEXT;
long glGetVertexArrayPointervEXT;
long glGetVertexArrayIntegeri_vEXT;
long glGetVertexArrayPointeri_vEXT;
long glMapNamedBufferRangeEXT;
long glFlushMappedNamedBufferRangeEXT;
// EXT_draw_buffers2
long glColorMaskIndexedEXT;
long glGetBooleanIndexedvEXT;
long glGetIntegerIndexedvEXT;
long glEnableIndexedEXT;
long glDisableIndexedEXT;
long glIsEnabledIndexedEXT;
// EXT_draw_instanced
long glDrawArraysInstancedEXT;
long glDrawElementsInstancedEXT;
// EXT_draw_range_elements
long glDrawRangeElementsEXT;
// EXT_fog_coord
long glFogCoordfEXT;
long glFogCoorddEXT;
long glFogCoordPointerEXT;
// EXT_framebuffer_blit
long glBlitFramebufferEXT;
// EXT_framebuffer_multisample
long glRenderbufferStorageMultisampleEXT;
// EXT_framebuffer_object
long glIsRenderbufferEXT;
long glBindRenderbufferEXT;
long glDeleteRenderbuffersEXT;
long glGenRenderbuffersEXT;
long glRenderbufferStorageEXT;
long glGetRenderbufferParameterivEXT;
long glIsFramebufferEXT;
long glBindFramebufferEXT;
long glDeleteFramebuffersEXT;
long glGenFramebuffersEXT;
long glCheckFramebufferStatusEXT;
long glFramebufferTexture1DEXT;
long glFramebufferTexture2DEXT;
long glFramebufferTexture3DEXT;
long glFramebufferRenderbufferEXT;
long glGetFramebufferAttachmentParameterivEXT;
long glGenerateMipmapEXT;
// EXT_geometry_shader4
long glProgramParameteriEXT;
long glFramebufferTextureEXT;
long glFramebufferTextureLayerEXT;
long glFramebufferTextureFaceEXT;
// EXT_gpu_program_parameters
long glProgramEnvParameters4fvEXT;
long glProgramLocalParameters4fvEXT;
// EXT_gpu_shader4
long glVertexAttribI1iEXT;
long glVertexAttribI2iEXT;
long glVertexAttribI3iEXT;
long glVertexAttribI4iEXT;
long glVertexAttribI1uiEXT;
long glVertexAttribI2uiEXT;
long glVertexAttribI3uiEXT;
long glVertexAttribI4uiEXT;
long glVertexAttribI1ivEXT;
long glVertexAttribI2ivEXT;
long glVertexAttribI3ivEXT;
long glVertexAttribI4ivEXT;
long glVertexAttribI1uivEXT;
long glVertexAttribI2uivEXT;
long glVertexAttribI3uivEXT;
long glVertexAttribI4uivEXT;
long glVertexAttribI4bvEXT;
long glVertexAttribI4svEXT;
long glVertexAttribI4ubvEXT;
long glVertexAttribI4usvEXT;
long glVertexAttribIPointerEXT;
long glGetVertexAttribIivEXT;
long glGetVertexAttribIuivEXT;
long glUniform1uiEXT;
long glUniform2uiEXT;
long glUniform3uiEXT;
long glUniform4uiEXT;
long glUniform1uivEXT;
long glUniform2uivEXT;
long glUniform3uivEXT;
long glUniform4uivEXT;
long glGetUniformuivEXT;
long glBindFragDataLocationEXT;
long glGetFragDataLocationEXT;
// EXT_multi_draw_arrays
long glMultiDrawArraysEXT;
// EXT_paletted_texture
long glColorTableEXT;
long glColorSubTableEXT;
long glGetColorTableEXT;
long glGetColorTableParameterivEXT;
long glGetColorTableParameterfvEXT;
// EXT_point_parameters
long glPointParameterfEXT;
long glPointParameterfvEXT;
// EXT_provoking_vertex
long glProvokingVertexEXT;
// EXT_secondary_color
long glSecondaryColor3bEXT;
long glSecondaryColor3fEXT;
long glSecondaryColor3dEXT;
long glSecondaryColor3ubEXT;
long glSecondaryColorPointerEXT;
// EXT_separate_shader_objects
long glUseShaderProgramEXT;
long glActiveProgramEXT;
long glCreateShaderProgramEXT;
// EXT_shader_image_load_store
long glBindImageTextureEXT;
long glMemoryBarrierEXT;
// EXT_stencil_clear_tag
long glStencilClearTagEXT;
// EXT_stencil_two_side
long glActiveStencilFaceEXT;
// EXT_texture_buffer_object
long glTexBufferEXT;
// EXT_texture_integer
long glClearColorIiEXT;
long glClearColorIuiEXT;
long glTexParameterIivEXT;
long glTexParameterIuivEXT;
long glGetTexParameterIivEXT;
long glGetTexParameterIuivEXT;
// EXT_timer_query
long glGetQueryObjecti64vEXT;
long glGetQueryObjectui64vEXT;
// EXT_transform_feedback
long glBindBufferRangeEXT;
long glBindBufferOffsetEXT;
long glBindBufferBaseEXT;
long glBeginTransformFeedbackEXT;
long glEndTransformFeedbackEXT;
long glTransformFeedbackVaryingsEXT;
long glGetTransformFeedbackVaryingEXT;
// EXT_vertex_attrib_64bit
long glVertexAttribL1dEXT;
long glVertexAttribL2dEXT;
long glVertexAttribL3dEXT;
long glVertexAttribL4dEXT;
long glVertexAttribL1dvEXT;
long glVertexAttribL2dvEXT;
long glVertexAttribL3dvEXT;
long glVertexAttribL4dvEXT;
long glVertexAttribLPointerEXT;
long glGetVertexAttribLdvEXT;
// EXT_vertex_shader
long glBeginVertexShaderEXT;
long glEndVertexShaderEXT;
long glBindVertexShaderEXT;
long glGenVertexShadersEXT;
long glDeleteVertexShaderEXT;
long glShaderOp1EXT;
long glShaderOp2EXT;
long glShaderOp3EXT;
long glSwizzleEXT;
long glWriteMaskEXT;
long glInsertComponentEXT;
long glExtractComponentEXT;
long glGenSymbolsEXT;
long glSetInvariantEXT;
long glSetLocalConstantEXT;
long glVariantbvEXT;
long glVariantsvEXT;
long glVariantivEXT;
long glVariantfvEXT;
long glVariantdvEXT;
long glVariantubvEXT;
long glVariantusvEXT;
long glVariantuivEXT;
long glVariantPointerEXT;
long glEnableVariantClientStateEXT;
long glDisableVariantClientStateEXT;
long glBindLightParameterEXT;
long glBindMaterialParameterEXT;
long glBindTexGenParameterEXT;
long glBindTextureUnitParameterEXT;
long glBindParameterEXT;
long glIsVariantEnabledEXT;
long glGetVariantBooleanvEXT;
long glGetVariantIntegervEXT;
long glGetVariantFloatvEXT;
long glGetVariantPointervEXT;
long glGetInvariantBooleanvEXT;
long glGetInvariantIntegervEXT;
long glGetInvariantFloatvEXT;
long glGetLocalConstantBooleanvEXT;
long glGetLocalConstantIntegervEXT;
long glGetLocalConstantFloatvEXT;
// EXT_vertex_weighting
long glVertexWeightfEXT;
long glVertexWeightPointerEXT;
// GL11
long glAccum;
long glAlphaFunc;
long glClearColor;
long glClearAccum;
long glClear;
long glCallLists;
long glCallList;
long glBlendFunc;
long glBitmap;
long glBindTexture;
long glPrioritizeTextures;
long glAreTexturesResident;
long glBegin;
long glEnd;
long glArrayElement;
long glClearDepth;
long glDeleteLists;
long glDeleteTextures;
long glCullFace;
long glCopyTexSubImage2D;
long glCopyTexSubImage1D;
long glCopyTexImage2D;
long glCopyTexImage1D;
long glCopyPixels;
long glColorPointer;
long glColorMaterial;
long glColorMask;
long glColor3b;
long glColor3f;
long glColor3d;
long glColor3ub;
long glColor4b;
long glColor4f;
long glColor4d;
long glColor4ub;
long glClipPlane;
long glClearStencil;
long glEvalPoint1;
long glEvalPoint2;
long glEvalMesh1;
long glEvalMesh2;
long glEvalCoord1f;
long glEvalCoord1d;
long glEvalCoord2f;
long glEvalCoord2d;
long glEnableClientState;
long glDisableClientState;
long glEnable;
long glDisable;
long glEdgeFlagPointer;
long glEdgeFlag;
long glDrawPixels;
long glDrawElements;
long glDrawBuffer;
long glDrawArrays;
long glDepthRange;
long glDepthMask;
long glDepthFunc;
long glFeedbackBuffer;
long glGetPixelMapfv;
long glGetPixelMapuiv;
long glGetPixelMapusv;
long glGetMaterialfv;
long glGetMaterialiv;
long glGetMapfv;
long glGetMapdv;
long glGetMapiv;
long glGetLightfv;
long glGetLightiv;
long glGetError;
long glGetClipPlane;
long glGetBooleanv;
long glGetDoublev;
long glGetFloatv;
long glGetIntegerv;
long glGenTextures;
long glGenLists;
long glFrustum;
long glFrontFace;
long glFogf;
long glFogi;
long glFogfv;
long glFogiv;
long glFlush;
long glFinish;
long glGetPointerv;
long glIsEnabled;
long glInterleavedArrays;
long glInitNames;
long glHint;
long glGetTexParameterfv;
long glGetTexParameteriv;
long glGetTexLevelParameterfv;
long glGetTexLevelParameteriv;
long glGetTexImage;
long glGetTexGeniv;
long glGetTexGenfv;
long glGetTexGendv;
long glGetTexEnviv;
long glGetTexEnvfv;
long glGetString;
long glGetPolygonStipple;
long glIsList;
long glMaterialf;
long glMateriali;
long glMaterialfv;
long glMaterialiv;
long glMapGrid1f;
long glMapGrid1d;
long glMapGrid2f;
long glMapGrid2d;
long glMap2f;
long glMap2d;
long glMap1f;
long glMap1d;
long glLogicOp;
long glLoadName;
long glLoadMatrixf;
long glLoadMatrixd;
long glLoadIdentity;
long glListBase;
long glLineWidth;
long glLineStipple;
long glLightModelf;
long glLightModeli;
long glLightModelfv;
long glLightModeliv;
long glLightf;
long glLighti;
long glLightfv;
long glLightiv;
long glIsTexture;
long glMatrixMode;
long glPolygonStipple;
long glPolygonOffset;
long glPolygonMode;
long glPointSize;
long glPixelZoom;
long glPixelTransferf;
long glPixelTransferi;
long glPixelStoref;
long glPixelStorei;
long glPixelMapfv;
long glPixelMapuiv;
long glPixelMapusv;
long glPassThrough;
long glOrtho;
long glNormalPointer;
long glNormal3b;
long glNormal3f;
long glNormal3d;
long glNormal3i;
long glNewList;
long glEndList;
long glMultMatrixf;
long glMultMatrixd;
long glShadeModel;
long glSelectBuffer;
long glScissor;
long glScalef;
long glScaled;
long glRotatef;
long glRenderMode;
long glRectf;
long glRectd;
long glRecti;
long glReadPixels;
long glReadBuffer;
long glRasterPos2f;
long glRasterPos2d;
long glRasterPos2i;
long glRasterPos3f;
long glRasterPos3d;
long glRasterPos3i;
long glRasterPos4f;
long glRasterPos4d;
long glRasterPos4i;
long glPushName;
long glPopName;
long glPushMatrix;
long glPopMatrix;
long glPushClientAttrib;
long glPopClientAttrib;
long glPushAttrib;
long glPopAttrib;
long glStencilFunc;
long glVertexPointer;
long glVertex2f;
long glVertex2d;
long glVertex2i;
long glVertex3f;
long glVertex3d;
long glVertex3i;
long glVertex4f;
long glVertex4d;
long glVertex4i;
long glTranslatef;
long glTranslated;
long glTexImage1D;
long glTexImage2D;
long glTexSubImage1D;
long glTexSubImage2D;
long glTexParameterf;
long glTexParameteri;
long glTexParameterfv;
long glTexParameteriv;
long glTexGenf;
long glTexGend;
long glTexGenfv;
long glTexGendv;
long glTexGeni;
long glTexGeniv;
long glTexEnvf;
long glTexEnvi;
long glTexEnvfv;
long glTexEnviv;
long glTexCoordPointer;
long glTexCoord1f;
long glTexCoord1d;
long glTexCoord2f;
long glTexCoord2d;
long glTexCoord3f;
long glTexCoord3d;
long glTexCoord4f;
long glTexCoord4d;
long glStencilOp;
long glStencilMask;
long glViewport;
// GL12
long glDrawRangeElements;
long glTexImage3D;
long glTexSubImage3D;
long glCopyTexSubImage3D;
// GL13
long glActiveTexture;
long glClientActiveTexture;
long glCompressedTexImage1D;
long glCompressedTexImage2D;
long glCompressedTexImage3D;
long glCompressedTexSubImage1D;
long glCompressedTexSubImage2D;
long glCompressedTexSubImage3D;
long glGetCompressedTexImage;
long glMultiTexCoord1f;
long glMultiTexCoord1d;
long glMultiTexCoord2f;
long glMultiTexCoord2d;
long glMultiTexCoord3f;
long glMultiTexCoord3d;
long glMultiTexCoord4f;
long glMultiTexCoord4d;
long glLoadTransposeMatrixf;
long glLoadTransposeMatrixd;
long glMultTransposeMatrixf;
long glMultTransposeMatrixd;
long glSampleCoverage;
// GL14
long glBlendEquation;
long glBlendColor;
long glFogCoordf;
long glFogCoordd;
long glFogCoordPointer;
long glMultiDrawArrays;
long glPointParameteri;
long glPointParameterf;
long glPointParameteriv;
long glPointParameterfv;
long glSecondaryColor3b;
long glSecondaryColor3f;
long glSecondaryColor3d;
long glSecondaryColor3ub;
long glSecondaryColorPointer;
long glBlendFuncSeparate;
long glWindowPos2f;
long glWindowPos2d;
long glWindowPos2i;
long glWindowPos3f;
long glWindowPos3d;
long glWindowPos3i;
// GL15
long glBindBuffer;
long glDeleteBuffers;
long glGenBuffers;
long glIsBuffer;
long glBufferData;
long glBufferSubData;
long glGetBufferSubData;
long glMapBuffer;
long glUnmapBuffer;
long glGetBufferParameteriv;
long glGetBufferPointerv;
long glGenQueries;
long glDeleteQueries;
long glIsQuery;
long glBeginQuery;
long glEndQuery;
long glGetQueryiv;
long glGetQueryObjectiv;
long glGetQueryObjectuiv;
// GL20
long glShaderSource;
long glCreateShader;
long glIsShader;
long glCompileShader;
long glDeleteShader;
long glCreateProgram;
long glIsProgram;
long glAttachShader;
long glDetachShader;
long glLinkProgram;
long glUseProgram;
long glValidateProgram;
long glDeleteProgram;
long glUniform1f;
long glUniform2f;
long glUniform3f;
long glUniform4f;
long glUniform1i;
long glUniform2i;
long glUniform3i;
long glUniform4i;
long glUniform1fv;
long glUniform2fv;
long glUniform3fv;
long glUniform4fv;
long glUniform1iv;
long glUniform2iv;
long glUniform3iv;
long glUniform4iv;
long glUniformMatrix2fv;
long glUniformMatrix3fv;
long glUniformMatrix4fv;
long glGetShaderiv;
long glGetProgramiv;
long glGetShaderInfoLog;
long glGetProgramInfoLog;
long glGetAttachedShaders;
long glGetUniformLocation;
long glGetActiveUniform;
long glGetUniformfv;
long glGetUniformiv;
long glGetShaderSource;
long glVertexAttrib1s;
long glVertexAttrib1f;
long glVertexAttrib1d;
long glVertexAttrib2s;
long glVertexAttrib2f;
long glVertexAttrib2d;
long glVertexAttrib3s;
long glVertexAttrib3f;
long glVertexAttrib3d;
long glVertexAttrib4s;
long glVertexAttrib4f;
long glVertexAttrib4d;
long glVertexAttrib4Nub;
long glVertexAttribPointer;
long glEnableVertexAttribArray;
long glDisableVertexAttribArray;
long glGetVertexAttribfv;
long glGetVertexAttribdv;
long glGetVertexAttribiv;
long glGetVertexAttribPointerv;
long glBindAttribLocation;
long glGetActiveAttrib;
long glGetAttribLocation;
long glDrawBuffers;
long glStencilOpSeparate;
long glStencilFuncSeparate;
long glStencilMaskSeparate;
long glBlendEquationSeparate;
// GL21
long glUniformMatrix2x3fv;
long glUniformMatrix3x2fv;
long glUniformMatrix2x4fv;
long glUniformMatrix4x2fv;
long glUniformMatrix3x4fv;
long glUniformMatrix4x3fv;
// GL30
long glGetStringi;
long glClearBufferfv;
long glClearBufferiv;
long glClearBufferuiv;
long glClearBufferfi;
long glVertexAttribI1i;
long glVertexAttribI2i;
long glVertexAttribI3i;
long glVertexAttribI4i;
long glVertexAttribI1ui;
long glVertexAttribI2ui;
long glVertexAttribI3ui;
long glVertexAttribI4ui;
long glVertexAttribI1iv;
long glVertexAttribI2iv;
long glVertexAttribI3iv;
long glVertexAttribI4iv;
long glVertexAttribI1uiv;
long glVertexAttribI2uiv;
long glVertexAttribI3uiv;
long glVertexAttribI4uiv;
long glVertexAttribI4bv;
long glVertexAttribI4sv;
long glVertexAttribI4ubv;
long glVertexAttribI4usv;
long glVertexAttribIPointer;
long glGetVertexAttribIiv;
long glGetVertexAttribIuiv;
long glUniform1ui;
long glUniform2ui;
long glUniform3ui;
long glUniform4ui;
long glUniform1uiv;
long glUniform2uiv;
long glUniform3uiv;
long glUniform4uiv;
long glGetUniformuiv;
long glBindFragDataLocation;
long glGetFragDataLocation;
long glBeginConditionalRender;
long glEndConditionalRender;
long glMapBufferRange;
long glFlushMappedBufferRange;
long glClampColor;
long glIsRenderbuffer;
long glBindRenderbuffer;
long glDeleteRenderbuffers;
long glGenRenderbuffers;
long glRenderbufferStorage;
long glGetRenderbufferParameteriv;
long glIsFramebuffer;
long glBindFramebuffer;
long glDeleteFramebuffers;
long glGenFramebuffers;
long glCheckFramebufferStatus;
long glFramebufferTexture1D;
long glFramebufferTexture2D;
long glFramebufferTexture3D;
long glFramebufferRenderbuffer;
long glGetFramebufferAttachmentParameteriv;
long glGenerateMipmap;
long glRenderbufferStorageMultisample;
long glBlitFramebuffer;
long glTexParameterIiv;
long glTexParameterIuiv;
long glGetTexParameterIiv;
long glGetTexParameterIuiv;
long glFramebufferTextureLayer;
long glColorMaski;
long glGetBooleani_v;
long glGetIntegeri_v;
long glEnablei;
long glDisablei;
long glIsEnabledi;
long glBindBufferRange;
long glBindBufferBase;
long glBeginTransformFeedback;
long glEndTransformFeedback;
long glTransformFeedbackVaryings;
long glGetTransformFeedbackVarying;
long glBindVertexArray;
long glDeleteVertexArrays;
long glGenVertexArrays;
long glIsVertexArray;
// GL31
long glDrawArraysInstanced;
long glDrawElementsInstanced;
long glCopyBufferSubData;
long glPrimitiveRestartIndex;
long glTexBuffer;
long glGetUniformIndices;
long glGetActiveUniformsiv;
long glGetActiveUniformName;
long glGetUniformBlockIndex;
long glGetActiveUniformBlockiv;
long glGetActiveUniformBlockName;
long glUniformBlockBinding;
// GL32
long glDrawElementsBaseVertex;
long glDrawRangeElementsBaseVertex;
long glDrawElementsInstancedBaseVertex;
long glProvokingVertex;
long glTexImage2DMultisample;
long glTexImage3DMultisample;
long glGetMultisamplefv;
long glSampleMaski;
long glFramebufferTexture;
long glFenceSync;
long glIsSync;
long glDeleteSync;
long glClientWaitSync;
long glWaitSync;
long glGetInteger64v;
long glGetInteger64i_v;
long glGetSynciv;
// GL33
long glBindFragDataLocationIndexed;
long glGetFragDataIndex;
long glGenSamplers;
long glDeleteSamplers;
long glIsSampler;
long glBindSampler;
long glSamplerParameteri;
long glSamplerParameterf;
long glSamplerParameteriv;
long glSamplerParameterfv;
long glSamplerParameterIiv;
long glSamplerParameterIuiv;
long glGetSamplerParameteriv;
long glGetSamplerParameterfv;
long glGetSamplerParameterIiv;
long glGetSamplerParameterIuiv;
long glQueryCounter;
long glGetQueryObjecti64v;
long glGetQueryObjectui64v;
long glVertexAttribDivisor;
long glVertexP2ui;
long glVertexP3ui;
long glVertexP4ui;
long glVertexP2uiv;
long glVertexP3uiv;
long glVertexP4uiv;
long glTexCoordP1ui;
long glTexCoordP2ui;
long glTexCoordP3ui;
long glTexCoordP4ui;
long glTexCoordP1uiv;
long glTexCoordP2uiv;
long glTexCoordP3uiv;
long glTexCoordP4uiv;
long glMultiTexCoordP1ui;
long glMultiTexCoordP2ui;
long glMultiTexCoordP3ui;
long glMultiTexCoordP4ui;
long glMultiTexCoordP1uiv;
long glMultiTexCoordP2uiv;
long glMultiTexCoordP3uiv;
long glMultiTexCoordP4uiv;
long glNormalP3ui;
long glNormalP3uiv;
long glColorP3ui;
long glColorP4ui;
long glColorP3uiv;
long glColorP4uiv;
long glSecondaryColorP3ui;
long glSecondaryColorP3uiv;
long glVertexAttribP1ui;
long glVertexAttribP2ui;
long glVertexAttribP3ui;
long glVertexAttribP4ui;
long glVertexAttribP1uiv;
long glVertexAttribP2uiv;
long glVertexAttribP3uiv;
long glVertexAttribP4uiv;
// GL40
long glBlendEquationi;
long glBlendEquationSeparatei;
long glBlendFunci;
long glBlendFuncSeparatei;
long glDrawArraysIndirect;
long glDrawElementsIndirect;
long glUniform1d;
long glUniform2d;
long glUniform3d;
long glUniform4d;
long glUniform1dv;
long glUniform2dv;
long glUniform3dv;
long glUniform4dv;
long glUniformMatrix2dv;
long glUniformMatrix3dv;
long glUniformMatrix4dv;
long glUniformMatrix2x3dv;
long glUniformMatrix2x4dv;
long glUniformMatrix3x2dv;
long glUniformMatrix3x4dv;
long glUniformMatrix4x2dv;
long glUniformMatrix4x3dv;
long glGetUniformdv;
long glMinSampleShading;
long glGetSubroutineUniformLocation;
long glGetSubroutineIndex;
long glGetActiveSubroutineUniformiv;
long glGetActiveSubroutineUniformName;
long glGetActiveSubroutineName;
long glUniformSubroutinesuiv;
long glGetUniformSubroutineuiv;
long glGetProgramStageiv;
long glPatchParameteri;
long glPatchParameterfv;
long glBindTransformFeedback;
long glDeleteTransformFeedbacks;
long glGenTransformFeedbacks;
long glIsTransformFeedback;
long glPauseTransformFeedback;
long glResumeTransformFeedback;
long glDrawTransformFeedback;
long glDrawTransformFeedbackStream;
long glBeginQueryIndexed;
long glEndQueryIndexed;
long glGetQueryIndexediv;
// GL41
long glReleaseShaderCompiler;
long glShaderBinary;
long glGetShaderPrecisionFormat;
long glDepthRangef;
long glClearDepthf;
long glGetProgramBinary;
long glProgramBinary;
long glProgramParameteri;
long glUseProgramStages;
long glActiveShaderProgram;
long glCreateShaderProgramv;
long glBindProgramPipeline;
long glDeleteProgramPipelines;
long glGenProgramPipelines;
long glIsProgramPipeline;
long glGetProgramPipelineiv;
long glProgramUniform1i;
long glProgramUniform2i;
long glProgramUniform3i;
long glProgramUniform4i;
long glProgramUniform1f;
long glProgramUniform2f;
long glProgramUniform3f;
long glProgramUniform4f;
long glProgramUniform1d;
long glProgramUniform2d;
long glProgramUniform3d;
long glProgramUniform4d;
long glProgramUniform1iv;
long glProgramUniform2iv;
long glProgramUniform3iv;
long glProgramUniform4iv;
long glProgramUniform1fv;
long glProgramUniform2fv;
long glProgramUniform3fv;
long glProgramUniform4fv;
long glProgramUniform1dv;
long glProgramUniform2dv;
long glProgramUniform3dv;
long glProgramUniform4dv;
long glProgramUniform1ui;
long glProgramUniform2ui;
long glProgramUniform3ui;
long glProgramUniform4ui;
long glProgramUniform1uiv;
long glProgramUniform2uiv;
long glProgramUniform3uiv;
long glProgramUniform4uiv;
long glProgramUniformMatrix2fv;
long glProgramUniformMatrix3fv;
long glProgramUniformMatrix4fv;
long glProgramUniformMatrix2dv;
long glProgramUniformMatrix3dv;
long glProgramUniformMatrix4dv;
long glProgramUniformMatrix2x3fv;
long glProgramUniformMatrix3x2fv;
long glProgramUniformMatrix2x4fv;
long glProgramUniformMatrix4x2fv;
long glProgramUniformMatrix3x4fv;
long glProgramUniformMatrix4x3fv;
long glProgramUniformMatrix2x3dv;
long glProgramUniformMatrix3x2dv;
long glProgramUniformMatrix2x4dv;
long glProgramUniformMatrix4x2dv;
long glProgramUniformMatrix3x4dv;
long glProgramUniformMatrix4x3dv;
long glValidateProgramPipeline;
long glGetProgramPipelineInfoLog;
long glVertexAttribL1d;
long glVertexAttribL2d;
long glVertexAttribL3d;
long glVertexAttribL4d;
long glVertexAttribL1dv;
long glVertexAttribL2dv;
long glVertexAttribL3dv;
long glVertexAttribL4dv;
long glVertexAttribLPointer;
long glGetVertexAttribLdv;
long glViewportArrayv;
long glViewportIndexedf;
long glViewportIndexedfv;
long glScissorArrayv;
long glScissorIndexed;
long glScissorIndexedv;
long glDepthRangeArrayv;
long glDepthRangeIndexed;
long glGetFloati_v;
long glGetDoublei_v;
// GREMEDY_string_marker
long glStringMarkerGREMEDY;
// NV_conditional_render
long glBeginConditionalRenderNV;
long glEndConditionalRenderNV;
// NV_copy_image
long glCopyImageSubDataNV;
// NV_depth_buffer_float
long glDepthRangedNV;
long glClearDepthdNV;
long glDepthBoundsdNV;
// NV_evaluators
long glGetMapControlPointsNV;
long glMapControlPointsNV;
long glMapParameterfvNV;
long glMapParameterivNV;
long glGetMapParameterfvNV;
long glGetMapParameterivNV;
long glGetMapAttribParameterfvNV;
long glGetMapAttribParameterivNV;
long glEvalMapsNV;
// NV_explicit_multisample
long glGetMultisamplefvNV;
long glSampleMaskIndexedNV;
long glTexRenderbufferNV;
// NV_fence
long glGenFencesNV;
long glDeleteFencesNV;
long glSetFenceNV;
long glTestFenceNV;
long glFinishFenceNV;
long glIsFenceNV;
long glGetFenceivNV;
// NV_fragment_program
long glProgramNamedParameter4fNV;
long glProgramNamedParameter4dNV;
long glGetProgramNamedParameterfvNV;
long glGetProgramNamedParameterdvNV;
// NV_framebuffer_multisample_coverage
long glRenderbufferStorageMultisampleCoverageNV;
// NV_geometry_program4
long glProgramVertexLimitNV;
// NV_gpu_program4
long glProgramLocalParameterI4iNV;
long glProgramLocalParameterI4ivNV;
long glProgramLocalParametersI4ivNV;
long glProgramLocalParameterI4uiNV;
long glProgramLocalParameterI4uivNV;
long glProgramLocalParametersI4uivNV;
long glProgramEnvParameterI4iNV;
long glProgramEnvParameterI4ivNV;
long glProgramEnvParametersI4ivNV;
long glProgramEnvParameterI4uiNV;
long glProgramEnvParameterI4uivNV;
long glProgramEnvParametersI4uivNV;
long glGetProgramLocalParameterIivNV;
long glGetProgramLocalParameterIuivNV;
long glGetProgramEnvParameterIivNV;
long glGetProgramEnvParameterIuivNV;
// NV_gpu_shader5
long glUniform1i64NV;
long glUniform2i64NV;
long glUniform3i64NV;
long glUniform4i64NV;
long glUniform1i64vNV;
long glUniform2i64vNV;
long glUniform3i64vNV;
long glUniform4i64vNV;
long glUniform1ui64NV;
long glUniform2ui64NV;
long glUniform3ui64NV;
long glUniform4ui64NV;
long glUniform1ui64vNV;
long glUniform2ui64vNV;
long glUniform3ui64vNV;
long glUniform4ui64vNV;
long glGetUniformi64vNV;
long glGetUniformui64vNV;
long glProgramUniform1i64NV;
long glProgramUniform2i64NV;
long glProgramUniform3i64NV;
long glProgramUniform4i64NV;
long glProgramUniform1i64vNV;
long glProgramUniform2i64vNV;
long glProgramUniform3i64vNV;
long glProgramUniform4i64vNV;
long glProgramUniform1ui64NV;
long glProgramUniform2ui64NV;
long glProgramUniform3ui64NV;
long glProgramUniform4ui64NV;
long glProgramUniform1ui64vNV;
long glProgramUniform2ui64vNV;
long glProgramUniform3ui64vNV;
long glProgramUniform4ui64vNV;
// NV_half_float
long glVertex2hNV;
long glVertex3hNV;
long glVertex4hNV;
long glNormal3hNV;
long glColor3hNV;
long glColor4hNV;
long glTexCoord1hNV;
long glTexCoord2hNV;
long glTexCoord3hNV;
long glTexCoord4hNV;
long glMultiTexCoord1hNV;
long glMultiTexCoord2hNV;
long glMultiTexCoord3hNV;
long glMultiTexCoord4hNV;
long glFogCoordhNV;
long glSecondaryColor3hNV;
long glVertexWeighthNV;
long glVertexAttrib1hNV;
long glVertexAttrib2hNV;
long glVertexAttrib3hNV;
long glVertexAttrib4hNV;
long glVertexAttribs1hvNV;
long glVertexAttribs2hvNV;
long glVertexAttribs3hvNV;
long glVertexAttribs4hvNV;
// NV_occlusion_query
long glGenOcclusionQueriesNV;
long glDeleteOcclusionQueriesNV;
long glIsOcclusionQueryNV;
long glBeginOcclusionQueryNV;
long glEndOcclusionQueryNV;
long glGetOcclusionQueryuivNV;
long glGetOcclusionQueryivNV;
// NV_parameter_buffer_object
long glProgramBufferParametersfvNV;
long glProgramBufferParametersIivNV;
long glProgramBufferParametersIuivNV;
// NV_pixel_data_range
long glPixelDataRangeNV;
long glFlushPixelDataRangeNV;
// NV_point_sprite
long glPointParameteriNV;
long glPointParameterivNV;
// NV_primitive_restart
long glPrimitiveRestartNV;
long glPrimitiveRestartIndexNV;
// NV_program
long glLoadProgramNV;
long glBindProgramNV;
long glDeleteProgramsNV;
long glGenProgramsNV;
long glGetProgramivNV;
long glGetProgramStringNV;
long glIsProgramNV;
long glAreProgramsResidentNV;
long glRequestResidentProgramsNV;
// NV_register_combiners
long glCombinerParameterfNV;
long glCombinerParameterfvNV;
long glCombinerParameteriNV;
long glCombinerParameterivNV;
long glCombinerInputNV;
long glCombinerOutputNV;
long glFinalCombinerInputNV;
long glGetCombinerInputParameterfvNV;
long glGetCombinerInputParameterivNV;
long glGetCombinerOutputParameterfvNV;
long glGetCombinerOutputParameterivNV;
long glGetFinalCombinerInputParameterfvNV;
long glGetFinalCombinerInputParameterivNV;
// NV_register_combiners2
long glCombinerStageParameterfvNV;
long glGetCombinerStageParameterfvNV;
// NV_shader_buffer_load
long glMakeBufferResidentNV;
long glMakeBufferNonResidentNV;
long glIsBufferResidentNV;
long glMakeNamedBufferResidentNV;
long glMakeNamedBufferNonResidentNV;
long glIsNamedBufferResidentNV;
long glGetBufferParameterui64vNV;
long glGetNamedBufferParameterui64vNV;
long glGetIntegerui64vNV;
long glUniformui64NV;
long glUniformui64vNV;
long glProgramUniformui64NV;
long glProgramUniformui64vNV;
// NV_texture_barrier
long glTextureBarrierNV;
// NV_transform_feedback
long glBindBufferRangeNV;
long glBindBufferOffsetNV;
long glBindBufferBaseNV;
long glTransformFeedbackAttribsNV;
long glTransformFeedbackVaryingsNV;
long glBeginTransformFeedbackNV;
long glEndTransformFeedbackNV;
long glGetVaryingLocationNV;
long glGetActiveVaryingNV;
long glActiveVaryingNV;
long glGetTransformFeedbackVaryingNV;
// NV_transform_feedback2
long glBindTransformFeedbackNV;
long glDeleteTransformFeedbacksNV;
long glGenTransformFeedbacksNV;
long glIsTransformFeedbackNV;
long glPauseTransformFeedbackNV;
long glResumeTransformFeedbackNV;
long glDrawTransformFeedbackNV;
// NV_vertex_array_range
long glVertexArrayRangeNV;
long glFlushVertexArrayRangeNV;
long glAllocateMemoryNV;
long glFreeMemoryNV;
// NV_vertex_attrib_integer_64bit
long glVertexAttribL1i64NV;
long glVertexAttribL2i64NV;
long glVertexAttribL3i64NV;
long glVertexAttribL4i64NV;
long glVertexAttribL1i64vNV;
long glVertexAttribL2i64vNV;
long glVertexAttribL3i64vNV;
long glVertexAttribL4i64vNV;
long glVertexAttribL1ui64NV;
long glVertexAttribL2ui64NV;
long glVertexAttribL3ui64NV;
long glVertexAttribL4ui64NV;
long glVertexAttribL1ui64vNV;
long glVertexAttribL2ui64vNV;
long glVertexAttribL3ui64vNV;
long glVertexAttribL4ui64vNV;
long glGetVertexAttribLi64vNV;
long glGetVertexAttribLui64vNV;
long glVertexAttribLFormatNV;
// NV_vertex_buffer_unified_memory
long glBufferAddressRangeNV;
long glVertexFormatNV;
long glNormalFormatNV;
long glColorFormatNV;
long glIndexFormatNV;
long glTexCoordFormatNV;
long glEdgeFlagFormatNV;
long glSecondaryColorFormatNV;
long glFogCoordFormatNV;
long glVertexAttribFormatNV;
long glVertexAttribIFormatNV;
long glGetIntegerui64i_vNV;
// NV_vertex_program
long glExecuteProgramNV;
long glGetProgramParameterfvNV;
long glGetProgramParameterdvNV;
long glGetTrackMatrixivNV;
long glGetVertexAttribfvNV;
long glGetVertexAttribdvNV;
long glGetVertexAttribivNV;
long glGetVertexAttribPointervNV;
long glProgramParameter4fNV;
long glProgramParameter4dNV;
long glProgramParameters4fvNV;
long glProgramParameters4dvNV;
long glTrackMatrixNV;
long glVertexAttribPointerNV;
long glVertexAttrib1sNV;
long glVertexAttrib1fNV;
long glVertexAttrib1dNV;
long glVertexAttrib2sNV;
long glVertexAttrib2fNV;
long glVertexAttrib2dNV;
long glVertexAttrib3sNV;
long glVertexAttrib3fNV;
long glVertexAttrib3dNV;
long glVertexAttrib4sNV;
long glVertexAttrib4fNV;
long glVertexAttrib4dNV;
long glVertexAttrib4ubNV;
long glVertexAttribs1svNV;
long glVertexAttribs1fvNV;
long glVertexAttribs1dvNV;
long glVertexAttribs2svNV;
long glVertexAttribs2fvNV;
long glVertexAttribs2dvNV;
long glVertexAttribs3svNV;
long glVertexAttribs3fvNV;
long glVertexAttribs3dvNV;
long glVertexAttribs4svNV;
long glVertexAttribs4fvNV;
long glVertexAttribs4dvNV;
private boolean AMD_debug_output_initNativeFunctionAddresses() {
return
(glDebugMessageEnableAMD = GLContext.getFunctionAddress(new String[] {"glDebugMessageEnableAMD","glDebugMessageEnableAMDX"})) != 0 &
(glDebugMessageInsertAMD = GLContext.getFunctionAddress(new String[] {"glDebugMessageInsertAMD","glDebugMessageInsertAMDX"})) != 0 &
(glDebugMessageCallbackAMD = GLContext.getFunctionAddress(new String[] {"glDebugMessageCallbackAMD","glDebugMessageCallbackAMDX"})) != 0 &
(glGetDebugMessageLogAMD = GLContext.getFunctionAddress(new String[] {"glGetDebugMessageLogAMD","glGetDebugMessageLogAMDX"})) != 0;
}
private boolean AMD_draw_buffers_blend_initNativeFunctionAddresses() {
return
(glBlendFuncIndexedAMD = GLContext.getFunctionAddress("glBlendFuncIndexedAMD")) != 0 &
(glBlendFuncSeparateIndexedAMD = GLContext.getFunctionAddress("glBlendFuncSeparateIndexedAMD")) != 0 &
(glBlendEquationIndexedAMD = GLContext.getFunctionAddress("glBlendEquationIndexedAMD")) != 0 &
(glBlendEquationSeparateIndexedAMD = GLContext.getFunctionAddress("glBlendEquationSeparateIndexedAMD")) != 0;
}
private boolean AMD_name_gen_delete_initNativeFunctionAddresses() {
return
(glGenNamesAMD = GLContext.getFunctionAddress("glGenNamesAMD")) != 0 &
(glDeleteNamesAMD = GLContext.getFunctionAddress("glDeleteNamesAMD")) != 0 &
(glIsNameAMD = GLContext.getFunctionAddress("glIsNameAMD")) != 0;
}
private boolean AMD_performance_monitor_initNativeFunctionAddresses() {
return
(glGetPerfMonitorGroupsAMD = GLContext.getFunctionAddress("glGetPerfMonitorGroupsAMD")) != 0 &
(glGetPerfMonitorCountersAMD = GLContext.getFunctionAddress("glGetPerfMonitorCountersAMD")) != 0 &
(glGetPerfMonitorGroupStringAMD = GLContext.getFunctionAddress("glGetPerfMonitorGroupStringAMD")) != 0 &
(glGetPerfMonitorCounterStringAMD = GLContext.getFunctionAddress("glGetPerfMonitorCounterStringAMD")) != 0 &
(glGetPerfMonitorCounterInfoAMD = GLContext.getFunctionAddress("glGetPerfMonitorCounterInfoAMD")) != 0 &
(glGenPerfMonitorsAMD = GLContext.getFunctionAddress("glGenPerfMonitorsAMD")) != 0 &
(glDeletePerfMonitorsAMD = GLContext.getFunctionAddress("glDeletePerfMonitorsAMD")) != 0 &
(glSelectPerfMonitorCountersAMD = GLContext.getFunctionAddress("glSelectPerfMonitorCountersAMD")) != 0 &
(glBeginPerfMonitorAMD = GLContext.getFunctionAddress("glBeginPerfMonitorAMD")) != 0 &
(glEndPerfMonitorAMD = GLContext.getFunctionAddress("glEndPerfMonitorAMD")) != 0 &
(glGetPerfMonitorCounterDataAMD = GLContext.getFunctionAddress("glGetPerfMonitorCounterDataAMD")) != 0;
}
private boolean AMD_vertex_shader_tessellator_initNativeFunctionAddresses() {
return
(glTessellationFactorAMD = GLContext.getFunctionAddress("glTessellationFactorAMD")) != 0 &
(glTessellationModeAMD = GLContext.getFunctionAddress("glTessellationModeAMD")) != 0;
}
private boolean APPLE_element_array_initNativeFunctionAddresses() {
return
(glElementPointerAPPLE = GLContext.getFunctionAddress("glElementPointerAPPLE")) != 0 &
(glDrawElementArrayAPPLE = GLContext.getFunctionAddress("glDrawElementArrayAPPLE")) != 0 &
(glDrawRangeElementArrayAPPLE = GLContext.getFunctionAddress("glDrawRangeElementArrayAPPLE")) != 0 &
(glMultiDrawElementArrayAPPLE = GLContext.getFunctionAddress("glMultiDrawElementArrayAPPLE")) != 0 &
(glMultiDrawRangeElementArrayAPPLE = GLContext.getFunctionAddress("glMultiDrawRangeElementArrayAPPLE")) != 0;
}
private boolean APPLE_fence_initNativeFunctionAddresses() {
return
(glGenFencesAPPLE = GLContext.getFunctionAddress("glGenFencesAPPLE")) != 0 &
(glDeleteFencesAPPLE = GLContext.getFunctionAddress("glDeleteFencesAPPLE")) != 0 &
(glSetFenceAPPLE = GLContext.getFunctionAddress("glSetFenceAPPLE")) != 0 &
(glIsFenceAPPLE = GLContext.getFunctionAddress("glIsFenceAPPLE")) != 0 &
(glTestFenceAPPLE = GLContext.getFunctionAddress("glTestFenceAPPLE")) != 0 &
(glFinishFenceAPPLE = GLContext.getFunctionAddress("glFinishFenceAPPLE")) != 0 &
(glTestObjectAPPLE = GLContext.getFunctionAddress("glTestObjectAPPLE")) != 0 &
(glFinishObjectAPPLE = GLContext.getFunctionAddress("glFinishObjectAPPLE")) != 0;
}
private boolean APPLE_flush_buffer_range_initNativeFunctionAddresses() {
return
(glBufferParameteriAPPLE = GLContext.getFunctionAddress("glBufferParameteriAPPLE")) != 0 &
(glFlushMappedBufferRangeAPPLE = GLContext.getFunctionAddress("glFlushMappedBufferRangeAPPLE")) != 0;
}
private boolean APPLE_object_purgeable_initNativeFunctionAddresses() {
return
(glObjectPurgeableAPPLE = GLContext.getFunctionAddress("glObjectPurgeableAPPLE")) != 0 &
(glObjectUnpurgeableAPPLE = GLContext.getFunctionAddress("glObjectUnpurgeableAPPLE")) != 0 &
(glGetObjectParameterivAPPLE = GLContext.getFunctionAddress("glGetObjectParameterivAPPLE")) != 0;
}
private boolean APPLE_texture_range_initNativeFunctionAddresses() {
return
(glTextureRangeAPPLE = GLContext.getFunctionAddress("glTextureRangeAPPLE")) != 0 &
(glGetTexParameterPointervAPPLE = GLContext.getFunctionAddress("glGetTexParameterPointervAPPLE")) != 0;
}
private boolean APPLE_vertex_array_object_initNativeFunctionAddresses() {
return
(glBindVertexArrayAPPLE = GLContext.getFunctionAddress("glBindVertexArrayAPPLE")) != 0 &
(glDeleteVertexArraysAPPLE = GLContext.getFunctionAddress("glDeleteVertexArraysAPPLE")) != 0 &
(glGenVertexArraysAPPLE = GLContext.getFunctionAddress("glGenVertexArraysAPPLE")) != 0 &
(glIsVertexArrayAPPLE = GLContext.getFunctionAddress("glIsVertexArrayAPPLE")) != 0;
}
private boolean APPLE_vertex_array_range_initNativeFunctionAddresses() {
return
(glVertexArrayRangeAPPLE = GLContext.getFunctionAddress("glVertexArrayRangeAPPLE")) != 0 &
(glFlushVertexArrayRangeAPPLE = GLContext.getFunctionAddress("glFlushVertexArrayRangeAPPLE")) != 0 &
(glVertexArrayParameteriAPPLE = GLContext.getFunctionAddress("glVertexArrayParameteriAPPLE")) != 0;
}
private boolean APPLE_vertex_program_evaluators_initNativeFunctionAddresses() {
return
(glEnableVertexAttribAPPLE = GLContext.getFunctionAddress("glEnableVertexAttribAPPLE")) != 0 &
(glDisableVertexAttribAPPLE = GLContext.getFunctionAddress("glDisableVertexAttribAPPLE")) != 0 &
(glIsVertexAttribEnabledAPPLE = GLContext.getFunctionAddress("glIsVertexAttribEnabledAPPLE")) != 0 &
(glMapVertexAttrib1dAPPLE = GLContext.getFunctionAddress("glMapVertexAttrib1dAPPLE")) != 0 &
(glMapVertexAttrib1fAPPLE = GLContext.getFunctionAddress("glMapVertexAttrib1fAPPLE")) != 0 &
(glMapVertexAttrib2dAPPLE = GLContext.getFunctionAddress("glMapVertexAttrib2dAPPLE")) != 0 &
(glMapVertexAttrib2fAPPLE = GLContext.getFunctionAddress("glMapVertexAttrib2fAPPLE")) != 0;
}
private boolean ARB_ES2_compatibility_initNativeFunctionAddresses() {
return
(glReleaseShaderCompiler = GLContext.getFunctionAddress("glReleaseShaderCompiler")) != 0 &
(glShaderBinary = GLContext.getFunctionAddress("glShaderBinary")) != 0 &
(glGetShaderPrecisionFormat = GLContext.getFunctionAddress("glGetShaderPrecisionFormat")) != 0 &
(glDepthRangef = GLContext.getFunctionAddress("glDepthRangef")) != 0 &
(glClearDepthf = GLContext.getFunctionAddress("glClearDepthf")) != 0;
}
private boolean ARB_blend_func_extended_initNativeFunctionAddresses() {
return
(glBindFragDataLocationIndexed = GLContext.getFunctionAddress("glBindFragDataLocationIndexed")) != 0 &
(glGetFragDataIndex = GLContext.getFunctionAddress("glGetFragDataIndex")) != 0;
}
private boolean ARB_buffer_object_initNativeFunctionAddresses() {
return
(glBindBufferARB = GLContext.getFunctionAddress("glBindBufferARB")) != 0 &
(glDeleteBuffersARB = GLContext.getFunctionAddress("glDeleteBuffersARB")) != 0 &
(glGenBuffersARB = GLContext.getFunctionAddress("glGenBuffersARB")) != 0 &
(glIsBufferARB = GLContext.getFunctionAddress("glIsBufferARB")) != 0 &
(glBufferDataARB = GLContext.getFunctionAddress("glBufferDataARB")) != 0 &
(glBufferSubDataARB = GLContext.getFunctionAddress("glBufferSubDataARB")) != 0 &
(glGetBufferSubDataARB = GLContext.getFunctionAddress("glGetBufferSubDataARB")) != 0 &
(glMapBufferARB = GLContext.getFunctionAddress("glMapBufferARB")) != 0 &
(glUnmapBufferARB = GLContext.getFunctionAddress("glUnmapBufferARB")) != 0 &
(glGetBufferParameterivARB = GLContext.getFunctionAddress("glGetBufferParameterivARB")) != 0 &
(glGetBufferPointervARB = GLContext.getFunctionAddress("glGetBufferPointervARB")) != 0;
}
private boolean ARB_cl_event_initNativeFunctionAddresses() {
return
(glCreateSyncFromCLeventARB = GLContext.getFunctionAddress("glCreateSyncFromCLeventARB")) != 0;
}
private boolean ARB_color_buffer_float_initNativeFunctionAddresses() {
return
(glClampColorARB = GLContext.getFunctionAddress("glClampColorARB")) != 0;
}
private boolean ARB_copy_buffer_initNativeFunctionAddresses() {
return
(glCopyBufferSubData = GLContext.getFunctionAddress("glCopyBufferSubData")) != 0;
}
private boolean ARB_debug_output_initNativeFunctionAddresses() {
return
(glDebugMessageControlARB = GLContext.getFunctionAddress("glDebugMessageControlARB")) != 0 &
(glDebugMessageInsertARB = GLContext.getFunctionAddress("glDebugMessageInsertARB")) != 0 &
(glDebugMessageCallbackARB = GLContext.getFunctionAddress("glDebugMessageCallbackARB")) != 0 &
(glGetDebugMessageLogARB = GLContext.getFunctionAddress("glGetDebugMessageLogARB")) != 0;
}
private boolean ARB_draw_buffers_initNativeFunctionAddresses() {
return
(glDrawBuffersARB = GLContext.getFunctionAddress("glDrawBuffersARB")) != 0;
}
private boolean ARB_draw_buffers_blend_initNativeFunctionAddresses() {
return
(glBlendEquationiARB = GLContext.getFunctionAddress("glBlendEquationiARB")) != 0 &
(glBlendEquationSeparateiARB = GLContext.getFunctionAddress("glBlendEquationSeparateiARB")) != 0 &
(glBlendFunciARB = GLContext.getFunctionAddress("glBlendFunciARB")) != 0 &
(glBlendFuncSeparateiARB = GLContext.getFunctionAddress("glBlendFuncSeparateiARB")) != 0;
}
private boolean ARB_draw_elements_base_vertex_initNativeFunctionAddresses() {
return
(glDrawElementsBaseVertex = GLContext.getFunctionAddress("glDrawElementsBaseVertex")) != 0 &
(glDrawRangeElementsBaseVertex = GLContext.getFunctionAddress("glDrawRangeElementsBaseVertex")) != 0 &
(glDrawElementsInstancedBaseVertex = GLContext.getFunctionAddress("glDrawElementsInstancedBaseVertex")) != 0;
}
private boolean ARB_draw_indirect_initNativeFunctionAddresses() {
return
(glDrawArraysIndirect = GLContext.getFunctionAddress("glDrawArraysIndirect")) != 0 &
(glDrawElementsIndirect = GLContext.getFunctionAddress("glDrawElementsIndirect")) != 0;
}
private boolean ARB_draw_instanced_initNativeFunctionAddresses() {
return
(glDrawArraysInstancedARB = GLContext.getFunctionAddress("glDrawArraysInstancedARB")) != 0 &
(glDrawElementsInstancedARB = GLContext.getFunctionAddress("glDrawElementsInstancedARB")) != 0;
}
private boolean ARB_framebuffer_object_initNativeFunctionAddresses() {
return
(glIsRenderbuffer = GLContext.getFunctionAddress("glIsRenderbuffer")) != 0 &
(glBindRenderbuffer = GLContext.getFunctionAddress("glBindRenderbuffer")) != 0 &
(glDeleteRenderbuffers = GLContext.getFunctionAddress("glDeleteRenderbuffers")) != 0 &
(glGenRenderbuffers = GLContext.getFunctionAddress("glGenRenderbuffers")) != 0 &
(glRenderbufferStorage = GLContext.getFunctionAddress("glRenderbufferStorage")) != 0 &
(glRenderbufferStorageMultisample = GLContext.getFunctionAddress("glRenderbufferStorageMultisample")) != 0 &
(glGetRenderbufferParameteriv = GLContext.getFunctionAddress("glGetRenderbufferParameteriv")) != 0 &
(glIsFramebuffer = GLContext.getFunctionAddress("glIsFramebuffer")) != 0 &
(glBindFramebuffer = GLContext.getFunctionAddress("glBindFramebuffer")) != 0 &
(glDeleteFramebuffers = GLContext.getFunctionAddress("glDeleteFramebuffers")) != 0 &
(glGenFramebuffers = GLContext.getFunctionAddress("glGenFramebuffers")) != 0 &
(glCheckFramebufferStatus = GLContext.getFunctionAddress("glCheckFramebufferStatus")) != 0 &
(glFramebufferTexture1D = GLContext.getFunctionAddress("glFramebufferTexture1D")) != 0 &
(glFramebufferTexture2D = GLContext.getFunctionAddress("glFramebufferTexture2D")) != 0 &
(glFramebufferTexture3D = GLContext.getFunctionAddress("glFramebufferTexture3D")) != 0 &
(glFramebufferTextureLayer = GLContext.getFunctionAddress("glFramebufferTextureLayer")) != 0 &
(glFramebufferRenderbuffer = GLContext.getFunctionAddress("glFramebufferRenderbuffer")) != 0 &
(glGetFramebufferAttachmentParameteriv = GLContext.getFunctionAddress("glGetFramebufferAttachmentParameteriv")) != 0 &
(glBlitFramebuffer = GLContext.getFunctionAddress("glBlitFramebuffer")) != 0 &
(glGenerateMipmap = GLContext.getFunctionAddress("glGenerateMipmap")) != 0;
}
private boolean ARB_geometry_shader4_initNativeFunctionAddresses() {
return
(glProgramParameteriARB = GLContext.getFunctionAddress("glProgramParameteriARB")) != 0 &
(glFramebufferTextureARB = GLContext.getFunctionAddress("glFramebufferTextureARB")) != 0 &
(glFramebufferTextureLayerARB = GLContext.getFunctionAddress("glFramebufferTextureLayerARB")) != 0 &
(glFramebufferTextureFaceARB = GLContext.getFunctionAddress("glFramebufferTextureFaceARB")) != 0;
}
private boolean ARB_get_program_binary_initNativeFunctionAddresses() {
return
(glGetProgramBinary = GLContext.getFunctionAddress("glGetProgramBinary")) != 0 &
(glProgramBinary = GLContext.getFunctionAddress("glProgramBinary")) != 0 &
(glProgramParameteri = GLContext.getFunctionAddress("glProgramParameteri")) != 0;
}
private boolean ARB_gpu_shader_fp64_initNativeFunctionAddresses(Set<String> supported_extensions) {
return
(glUniform1d = GLContext.getFunctionAddress("glUniform1d")) != 0 &
(glUniform2d = GLContext.getFunctionAddress("glUniform2d")) != 0 &
(glUniform3d = GLContext.getFunctionAddress("glUniform3d")) != 0 &
(glUniform4d = GLContext.getFunctionAddress("glUniform4d")) != 0 &
(glUniform1dv = GLContext.getFunctionAddress("glUniform1dv")) != 0 &
(glUniform2dv = GLContext.getFunctionAddress("glUniform2dv")) != 0 &
(glUniform3dv = GLContext.getFunctionAddress("glUniform3dv")) != 0 &
(glUniform4dv = GLContext.getFunctionAddress("glUniform4dv")) != 0 &
(glUniformMatrix2dv = GLContext.getFunctionAddress("glUniformMatrix2dv")) != 0 &
(glUniformMatrix3dv = GLContext.getFunctionAddress("glUniformMatrix3dv")) != 0 &
(glUniformMatrix4dv = GLContext.getFunctionAddress("glUniformMatrix4dv")) != 0 &
(glUniformMatrix2x3dv = GLContext.getFunctionAddress("glUniformMatrix2x3dv")) != 0 &
(glUniformMatrix2x4dv = GLContext.getFunctionAddress("glUniformMatrix2x4dv")) != 0 &
(glUniformMatrix3x2dv = GLContext.getFunctionAddress("glUniformMatrix3x2dv")) != 0 &
(glUniformMatrix3x4dv = GLContext.getFunctionAddress("glUniformMatrix3x4dv")) != 0 &
(glUniformMatrix4x2dv = GLContext.getFunctionAddress("glUniformMatrix4x2dv")) != 0 &
(glUniformMatrix4x3dv = GLContext.getFunctionAddress("glUniformMatrix4x3dv")) != 0 &
(glGetUniformdv = GLContext.getFunctionAddress("glGetUniformdv")) != 0 &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform1dEXT = GLContext.getFunctionAddress("glProgramUniform1dEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform2dEXT = GLContext.getFunctionAddress("glProgramUniform2dEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform3dEXT = GLContext.getFunctionAddress("glProgramUniform3dEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform4dEXT = GLContext.getFunctionAddress("glProgramUniform4dEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform1dvEXT = GLContext.getFunctionAddress("glProgramUniform1dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform2dvEXT = GLContext.getFunctionAddress("glProgramUniform2dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform3dvEXT = GLContext.getFunctionAddress("glProgramUniform3dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniform4dvEXT = GLContext.getFunctionAddress("glProgramUniform4dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix2dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix3dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix4dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix2x3dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2x3dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix2x4dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2x4dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix3x2dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3x2dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix3x4dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3x4dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix4x2dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4x2dvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_direct_state_access") || (glProgramUniformMatrix4x3dvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4x3dvEXT")) != 0);
}
private boolean ARB_imaging_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(forwardCompatible || (glColorTable = GLContext.getFunctionAddress("glColorTable")) != 0) &
(forwardCompatible || (glColorSubTable = GLContext.getFunctionAddress("glColorSubTable")) != 0) &
(forwardCompatible || (glColorTableParameteriv = GLContext.getFunctionAddress("glColorTableParameteriv")) != 0) &
(forwardCompatible || (glColorTableParameterfv = GLContext.getFunctionAddress("glColorTableParameterfv")) != 0) &
(forwardCompatible || (glCopyColorSubTable = GLContext.getFunctionAddress("glCopyColorSubTable")) != 0) &
(forwardCompatible || (glCopyColorTable = GLContext.getFunctionAddress("glCopyColorTable")) != 0) &
(forwardCompatible || (glGetColorTable = GLContext.getFunctionAddress("glGetColorTable")) != 0) &
(forwardCompatible || (glGetColorTableParameteriv = GLContext.getFunctionAddress("glGetColorTableParameteriv")) != 0) &
(forwardCompatible || (glGetColorTableParameterfv = GLContext.getFunctionAddress("glGetColorTableParameterfv")) != 0) &
(glBlendEquation = GLContext.getFunctionAddress("glBlendEquation")) != 0 &
(glBlendColor = GLContext.getFunctionAddress("glBlendColor")) != 0 &
(forwardCompatible || (glHistogram = GLContext.getFunctionAddress("glHistogram")) != 0) &
(forwardCompatible || (glResetHistogram = GLContext.getFunctionAddress("glResetHistogram")) != 0) &
(forwardCompatible || (glGetHistogram = GLContext.getFunctionAddress("glGetHistogram")) != 0) &
(forwardCompatible || (glGetHistogramParameterfv = GLContext.getFunctionAddress("glGetHistogramParameterfv")) != 0) &
(forwardCompatible || (glGetHistogramParameteriv = GLContext.getFunctionAddress("glGetHistogramParameteriv")) != 0) &
(forwardCompatible || (glMinmax = GLContext.getFunctionAddress("glMinmax")) != 0) &
(forwardCompatible || (glResetMinmax = GLContext.getFunctionAddress("glResetMinmax")) != 0) &
(forwardCompatible || (glGetMinmax = GLContext.getFunctionAddress("glGetMinmax")) != 0) &
(forwardCompatible || (glGetMinmaxParameterfv = GLContext.getFunctionAddress("glGetMinmaxParameterfv")) != 0) &
(forwardCompatible || (glGetMinmaxParameteriv = GLContext.getFunctionAddress("glGetMinmaxParameteriv")) != 0) &
(forwardCompatible || (glConvolutionFilter1D = GLContext.getFunctionAddress("glConvolutionFilter1D")) != 0) &
(forwardCompatible || (glConvolutionFilter2D = GLContext.getFunctionAddress("glConvolutionFilter2D")) != 0) &
(forwardCompatible || (glConvolutionParameterf = GLContext.getFunctionAddress("glConvolutionParameterf")) != 0) &
(forwardCompatible || (glConvolutionParameterfv = GLContext.getFunctionAddress("glConvolutionParameterfv")) != 0) &
(forwardCompatible || (glConvolutionParameteri = GLContext.getFunctionAddress("glConvolutionParameteri")) != 0) &
(forwardCompatible || (glConvolutionParameteriv = GLContext.getFunctionAddress("glConvolutionParameteriv")) != 0) &
(forwardCompatible || (glCopyConvolutionFilter1D = GLContext.getFunctionAddress("glCopyConvolutionFilter1D")) != 0) &
(forwardCompatible || (glCopyConvolutionFilter2D = GLContext.getFunctionAddress("glCopyConvolutionFilter2D")) != 0) &
(forwardCompatible || (glGetConvolutionFilter = GLContext.getFunctionAddress("glGetConvolutionFilter")) != 0) &
(forwardCompatible || (glGetConvolutionParameterfv = GLContext.getFunctionAddress("glGetConvolutionParameterfv")) != 0) &
(forwardCompatible || (glGetConvolutionParameteriv = GLContext.getFunctionAddress("glGetConvolutionParameteriv")) != 0) &
(forwardCompatible || (glSeparableFilter2D = GLContext.getFunctionAddress("glSeparableFilter2D")) != 0) &
(forwardCompatible || (glGetSeparableFilter = GLContext.getFunctionAddress("glGetSeparableFilter")) != 0);
}
private boolean ARB_instanced_arrays_initNativeFunctionAddresses() {
return
(glVertexAttribDivisorARB = GLContext.getFunctionAddress("glVertexAttribDivisorARB")) != 0;
}
private boolean ARB_map_buffer_range_initNativeFunctionAddresses() {
return
(glMapBufferRange = GLContext.getFunctionAddress("glMapBufferRange")) != 0 &
(glFlushMappedBufferRange = GLContext.getFunctionAddress("glFlushMappedBufferRange")) != 0;
}
private boolean ARB_matrix_palette_initNativeFunctionAddresses() {
return
(glCurrentPaletteMatrixARB = GLContext.getFunctionAddress("glCurrentPaletteMatrixARB")) != 0 &
(glMatrixIndexPointerARB = GLContext.getFunctionAddress("glMatrixIndexPointerARB")) != 0 &
(glMatrixIndexubvARB = GLContext.getFunctionAddress("glMatrixIndexubvARB")) != 0 &
(glMatrixIndexusvARB = GLContext.getFunctionAddress("glMatrixIndexusvARB")) != 0 &
(glMatrixIndexuivARB = GLContext.getFunctionAddress("glMatrixIndexuivARB")) != 0;
}
private boolean ARB_multisample_initNativeFunctionAddresses() {
return
(glSampleCoverageARB = GLContext.getFunctionAddress("glSampleCoverageARB")) != 0;
}
private boolean ARB_multitexture_initNativeFunctionAddresses() {
return
(glClientActiveTextureARB = GLContext.getFunctionAddress("glClientActiveTextureARB")) != 0 &
(glActiveTextureARB = GLContext.getFunctionAddress("glActiveTextureARB")) != 0 &
(glMultiTexCoord1fARB = GLContext.getFunctionAddress("glMultiTexCoord1fARB")) != 0 &
(glMultiTexCoord1dARB = GLContext.getFunctionAddress("glMultiTexCoord1dARB")) != 0 &
(glMultiTexCoord1iARB = GLContext.getFunctionAddress("glMultiTexCoord1iARB")) != 0 &
(glMultiTexCoord1sARB = GLContext.getFunctionAddress("glMultiTexCoord1sARB")) != 0 &
(glMultiTexCoord2fARB = GLContext.getFunctionAddress("glMultiTexCoord2fARB")) != 0 &
(glMultiTexCoord2dARB = GLContext.getFunctionAddress("glMultiTexCoord2dARB")) != 0 &
(glMultiTexCoord2iARB = GLContext.getFunctionAddress("glMultiTexCoord2iARB")) != 0 &
(glMultiTexCoord2sARB = GLContext.getFunctionAddress("glMultiTexCoord2sARB")) != 0 &
(glMultiTexCoord3fARB = GLContext.getFunctionAddress("glMultiTexCoord3fARB")) != 0 &
(glMultiTexCoord3dARB = GLContext.getFunctionAddress("glMultiTexCoord3dARB")) != 0 &
(glMultiTexCoord3iARB = GLContext.getFunctionAddress("glMultiTexCoord3iARB")) != 0 &
(glMultiTexCoord3sARB = GLContext.getFunctionAddress("glMultiTexCoord3sARB")) != 0 &
(glMultiTexCoord4fARB = GLContext.getFunctionAddress("glMultiTexCoord4fARB")) != 0 &
(glMultiTexCoord4dARB = GLContext.getFunctionAddress("glMultiTexCoord4dARB")) != 0 &
(glMultiTexCoord4iARB = GLContext.getFunctionAddress("glMultiTexCoord4iARB")) != 0 &
(glMultiTexCoord4sARB = GLContext.getFunctionAddress("glMultiTexCoord4sARB")) != 0;
}
private boolean ARB_occlusion_query_initNativeFunctionAddresses() {
return
(glGenQueriesARB = GLContext.getFunctionAddress("glGenQueriesARB")) != 0 &
(glDeleteQueriesARB = GLContext.getFunctionAddress("glDeleteQueriesARB")) != 0 &
(glIsQueryARB = GLContext.getFunctionAddress("glIsQueryARB")) != 0 &
(glBeginQueryARB = GLContext.getFunctionAddress("glBeginQueryARB")) != 0 &
(glEndQueryARB = GLContext.getFunctionAddress("glEndQueryARB")) != 0 &
(glGetQueryivARB = GLContext.getFunctionAddress("glGetQueryivARB")) != 0 &
(glGetQueryObjectivARB = GLContext.getFunctionAddress("glGetQueryObjectivARB")) != 0 &
(glGetQueryObjectuivARB = GLContext.getFunctionAddress("glGetQueryObjectuivARB")) != 0;
}
private boolean ARB_point_parameters_initNativeFunctionAddresses() {
return
(glPointParameterfARB = GLContext.getFunctionAddress("glPointParameterfARB")) != 0 &
(glPointParameterfvARB = GLContext.getFunctionAddress("glPointParameterfvARB")) != 0;
}
private boolean ARB_program_initNativeFunctionAddresses() {
return
(glProgramStringARB = GLContext.getFunctionAddress("glProgramStringARB")) != 0 &
(glBindProgramARB = GLContext.getFunctionAddress("glBindProgramARB")) != 0 &
(glDeleteProgramsARB = GLContext.getFunctionAddress("glDeleteProgramsARB")) != 0 &
(glGenProgramsARB = GLContext.getFunctionAddress("glGenProgramsARB")) != 0 &
(glProgramEnvParameter4fARB = GLContext.getFunctionAddress("glProgramEnvParameter4fARB")) != 0 &
(glProgramEnvParameter4dARB = GLContext.getFunctionAddress("glProgramEnvParameter4dARB")) != 0 &
(glProgramEnvParameter4fvARB = GLContext.getFunctionAddress("glProgramEnvParameter4fvARB")) != 0 &
(glProgramEnvParameter4dvARB = GLContext.getFunctionAddress("glProgramEnvParameter4dvARB")) != 0 &
(glProgramLocalParameter4fARB = GLContext.getFunctionAddress("glProgramLocalParameter4fARB")) != 0 &
(glProgramLocalParameter4dARB = GLContext.getFunctionAddress("glProgramLocalParameter4dARB")) != 0 &
(glProgramLocalParameter4fvARB = GLContext.getFunctionAddress("glProgramLocalParameter4fvARB")) != 0 &
(glProgramLocalParameter4dvARB = GLContext.getFunctionAddress("glProgramLocalParameter4dvARB")) != 0 &
(glGetProgramEnvParameterfvARB = GLContext.getFunctionAddress("glGetProgramEnvParameterfvARB")) != 0 &
(glGetProgramEnvParameterdvARB = GLContext.getFunctionAddress("glGetProgramEnvParameterdvARB")) != 0 &
(glGetProgramLocalParameterfvARB = GLContext.getFunctionAddress("glGetProgramLocalParameterfvARB")) != 0 &
(glGetProgramLocalParameterdvARB = GLContext.getFunctionAddress("glGetProgramLocalParameterdvARB")) != 0 &
(glGetProgramivARB = GLContext.getFunctionAddress("glGetProgramivARB")) != 0 &
(glGetProgramStringARB = GLContext.getFunctionAddress("glGetProgramStringARB")) != 0 &
(glIsProgramARB = GLContext.getFunctionAddress("glIsProgramARB")) != 0;
}
private boolean ARB_provoking_vertex_initNativeFunctionAddresses() {
return
(glProvokingVertex = GLContext.getFunctionAddress("glProvokingVertex")) != 0;
}
private boolean ARB_robustness_initNativeFunctionAddresses(boolean forwardCompatible,Set<String> supported_extensions) {
return
(glGetGraphicsResetStatusARB = GLContext.getFunctionAddress("glGetGraphicsResetStatusARB")) != 0 &
(forwardCompatible || (glGetnMapdvARB = GLContext.getFunctionAddress("glGetnMapdvARB")) != 0) &
(forwardCompatible || (glGetnMapfvARB = GLContext.getFunctionAddress("glGetnMapfvARB")) != 0) &
(forwardCompatible || (glGetnMapivARB = GLContext.getFunctionAddress("glGetnMapivARB")) != 0) &
(forwardCompatible || (glGetnPixelMapfvARB = GLContext.getFunctionAddress("glGetnPixelMapfvARB")) != 0) &
(forwardCompatible || (glGetnPixelMapuivARB = GLContext.getFunctionAddress("glGetnPixelMapuivARB")) != 0) &
(forwardCompatible || (glGetnPixelMapusvARB = GLContext.getFunctionAddress("glGetnPixelMapusvARB")) != 0) &
(forwardCompatible || (glGetnPolygonStippleARB = GLContext.getFunctionAddress("glGetnPolygonStippleARB")) != 0) &
(glGetnTexImageARB = GLContext.getFunctionAddress("glGetnTexImageARB")) != 0 &
(glReadnPixelsARB = GLContext.getFunctionAddress("glReadnPixelsARB")) != 0 &
(!supported_extensions.contains("GL_ARB_imaging") || (glGetnColorTableARB = GLContext.getFunctionAddress("glGetnColorTableARB")) != 0) &
(!supported_extensions.contains("GL_ARB_imaging") || (glGetnConvolutionFilterARB = GLContext.getFunctionAddress("glGetnConvolutionFilterARB")) != 0) &
(!supported_extensions.contains("GL_ARB_imaging") || (glGetnSeparableFilterARB = GLContext.getFunctionAddress("glGetnSeparableFilterARB")) != 0) &
(!supported_extensions.contains("GL_ARB_imaging") || (glGetnHistogramARB = GLContext.getFunctionAddress("glGetnHistogramARB")) != 0) &
(!supported_extensions.contains("GL_ARB_imaging") || (glGetnMinmaxARB = GLContext.getFunctionAddress("glGetnMinmaxARB")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetnCompressedTexImageARB = GLContext.getFunctionAddress("glGetnCompressedTexImageARB")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glGetnUniformfvARB = GLContext.getFunctionAddress("glGetnUniformfvARB")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glGetnUniformivARB = GLContext.getFunctionAddress("glGetnUniformivARB")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glGetnUniformuivARB = GLContext.getFunctionAddress("glGetnUniformuivARB")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glGetnUniformdvARB = GLContext.getFunctionAddress("glGetnUniformdvARB")) != 0);
}
private boolean ARB_sample_shading_initNativeFunctionAddresses() {
return
(glMinSampleShadingARB = GLContext.getFunctionAddress("glMinSampleShadingARB")) != 0;
}
private boolean ARB_sampler_objects_initNativeFunctionAddresses() {
return
(glGenSamplers = GLContext.getFunctionAddress("glGenSamplers")) != 0 &
(glDeleteSamplers = GLContext.getFunctionAddress("glDeleteSamplers")) != 0 &
(glIsSampler = GLContext.getFunctionAddress("glIsSampler")) != 0 &
(glBindSampler = GLContext.getFunctionAddress("glBindSampler")) != 0 &
(glSamplerParameteri = GLContext.getFunctionAddress("glSamplerParameteri")) != 0 &
(glSamplerParameterf = GLContext.getFunctionAddress("glSamplerParameterf")) != 0 &
(glSamplerParameteriv = GLContext.getFunctionAddress("glSamplerParameteriv")) != 0 &
(glSamplerParameterfv = GLContext.getFunctionAddress("glSamplerParameterfv")) != 0 &
(glSamplerParameterIiv = GLContext.getFunctionAddress("glSamplerParameterIiv")) != 0 &
(glSamplerParameterIuiv = GLContext.getFunctionAddress("glSamplerParameterIuiv")) != 0 &
(glGetSamplerParameteriv = GLContext.getFunctionAddress("glGetSamplerParameteriv")) != 0 &
(glGetSamplerParameterfv = GLContext.getFunctionAddress("glGetSamplerParameterfv")) != 0 &
(glGetSamplerParameterIiv = GLContext.getFunctionAddress("glGetSamplerParameterIiv")) != 0 &
(glGetSamplerParameterIuiv = GLContext.getFunctionAddress("glGetSamplerParameterIuiv")) != 0;
}
private boolean ARB_separate_shader_objects_initNativeFunctionAddresses() {
return
(glUseProgramStages = GLContext.getFunctionAddress("glUseProgramStages")) != 0 &
(glActiveShaderProgram = GLContext.getFunctionAddress("glActiveShaderProgram")) != 0 &
(glCreateShaderProgramv = GLContext.getFunctionAddress("glCreateShaderProgramv")) != 0 &
(glBindProgramPipeline = GLContext.getFunctionAddress("glBindProgramPipeline")) != 0 &
(glDeleteProgramPipelines = GLContext.getFunctionAddress("glDeleteProgramPipelines")) != 0 &
(glGenProgramPipelines = GLContext.getFunctionAddress("glGenProgramPipelines")) != 0 &
(glIsProgramPipeline = GLContext.getFunctionAddress("glIsProgramPipeline")) != 0 &
(glProgramParameteri = GLContext.getFunctionAddress("glProgramParameteri")) != 0 &
(glGetProgramPipelineiv = GLContext.getFunctionAddress("glGetProgramPipelineiv")) != 0 &
(glProgramUniform1i = GLContext.getFunctionAddress("glProgramUniform1i")) != 0 &
(glProgramUniform2i = GLContext.getFunctionAddress("glProgramUniform2i")) != 0 &
(glProgramUniform3i = GLContext.getFunctionAddress("glProgramUniform3i")) != 0 &
(glProgramUniform4i = GLContext.getFunctionAddress("glProgramUniform4i")) != 0 &
(glProgramUniform1f = GLContext.getFunctionAddress("glProgramUniform1f")) != 0 &
(glProgramUniform2f = GLContext.getFunctionAddress("glProgramUniform2f")) != 0 &
(glProgramUniform3f = GLContext.getFunctionAddress("glProgramUniform3f")) != 0 &
(glProgramUniform4f = GLContext.getFunctionAddress("glProgramUniform4f")) != 0 &
(glProgramUniform1d = GLContext.getFunctionAddress("glProgramUniform1d")) != 0 &
(glProgramUniform2d = GLContext.getFunctionAddress("glProgramUniform2d")) != 0 &
(glProgramUniform3d = GLContext.getFunctionAddress("glProgramUniform3d")) != 0 &
(glProgramUniform4d = GLContext.getFunctionAddress("glProgramUniform4d")) != 0 &
(glProgramUniform1iv = GLContext.getFunctionAddress("glProgramUniform1iv")) != 0 &
(glProgramUniform2iv = GLContext.getFunctionAddress("glProgramUniform2iv")) != 0 &
(glProgramUniform3iv = GLContext.getFunctionAddress("glProgramUniform3iv")) != 0 &
(glProgramUniform4iv = GLContext.getFunctionAddress("glProgramUniform4iv")) != 0 &
(glProgramUniform1fv = GLContext.getFunctionAddress("glProgramUniform1fv")) != 0 &
(glProgramUniform2fv = GLContext.getFunctionAddress("glProgramUniform2fv")) != 0 &
(glProgramUniform3fv = GLContext.getFunctionAddress("glProgramUniform3fv")) != 0 &
(glProgramUniform4fv = GLContext.getFunctionAddress("glProgramUniform4fv")) != 0 &
(glProgramUniform1dv = GLContext.getFunctionAddress("glProgramUniform1dv")) != 0 &
(glProgramUniform2dv = GLContext.getFunctionAddress("glProgramUniform2dv")) != 0 &
(glProgramUniform3dv = GLContext.getFunctionAddress("glProgramUniform3dv")) != 0 &
(glProgramUniform4dv = GLContext.getFunctionAddress("glProgramUniform4dv")) != 0 &
(glProgramUniform1ui = GLContext.getFunctionAddress("glProgramUniform1ui")) != 0 &
(glProgramUniform2ui = GLContext.getFunctionAddress("glProgramUniform2ui")) != 0 &
(glProgramUniform3ui = GLContext.getFunctionAddress("glProgramUniform3ui")) != 0 &
(glProgramUniform4ui = GLContext.getFunctionAddress("glProgramUniform4ui")) != 0 &
(glProgramUniform1uiv = GLContext.getFunctionAddress("glProgramUniform1uiv")) != 0 &
(glProgramUniform2uiv = GLContext.getFunctionAddress("glProgramUniform2uiv")) != 0 &
(glProgramUniform3uiv = GLContext.getFunctionAddress("glProgramUniform3uiv")) != 0 &
(glProgramUniform4uiv = GLContext.getFunctionAddress("glProgramUniform4uiv")) != 0 &
(glProgramUniformMatrix2fv = GLContext.getFunctionAddress("glProgramUniformMatrix2fv")) != 0 &
(glProgramUniformMatrix3fv = GLContext.getFunctionAddress("glProgramUniformMatrix3fv")) != 0 &
(glProgramUniformMatrix4fv = GLContext.getFunctionAddress("glProgramUniformMatrix4fv")) != 0 &
(glProgramUniformMatrix2dv = GLContext.getFunctionAddress("glProgramUniformMatrix2dv")) != 0 &
(glProgramUniformMatrix3dv = GLContext.getFunctionAddress("glProgramUniformMatrix3dv")) != 0 &
(glProgramUniformMatrix4dv = GLContext.getFunctionAddress("glProgramUniformMatrix4dv")) != 0 &
(glProgramUniformMatrix2x3fv = GLContext.getFunctionAddress("glProgramUniformMatrix2x3fv")) != 0 &
(glProgramUniformMatrix3x2fv = GLContext.getFunctionAddress("glProgramUniformMatrix3x2fv")) != 0 &
(glProgramUniformMatrix2x4fv = GLContext.getFunctionAddress("glProgramUniformMatrix2x4fv")) != 0 &
(glProgramUniformMatrix4x2fv = GLContext.getFunctionAddress("glProgramUniformMatrix4x2fv")) != 0 &
(glProgramUniformMatrix3x4fv = GLContext.getFunctionAddress("glProgramUniformMatrix3x4fv")) != 0 &
(glProgramUniformMatrix4x3fv = GLContext.getFunctionAddress("glProgramUniformMatrix4x3fv")) != 0 &
(glProgramUniformMatrix2x3dv = GLContext.getFunctionAddress("glProgramUniformMatrix2x3dv")) != 0 &
(glProgramUniformMatrix3x2dv = GLContext.getFunctionAddress("glProgramUniformMatrix3x2dv")) != 0 &
(glProgramUniformMatrix2x4dv = GLContext.getFunctionAddress("glProgramUniformMatrix2x4dv")) != 0 &
(glProgramUniformMatrix4x2dv = GLContext.getFunctionAddress("glProgramUniformMatrix4x2dv")) != 0 &
(glProgramUniformMatrix3x4dv = GLContext.getFunctionAddress("glProgramUniformMatrix3x4dv")) != 0 &
(glProgramUniformMatrix4x3dv = GLContext.getFunctionAddress("glProgramUniformMatrix4x3dv")) != 0 &
(glValidateProgramPipeline = GLContext.getFunctionAddress("glValidateProgramPipeline")) != 0 &
(glGetProgramPipelineInfoLog = GLContext.getFunctionAddress("glGetProgramPipelineInfoLog")) != 0;
}
private boolean ARB_shader_objects_initNativeFunctionAddresses() {
return
(glDeleteObjectARB = GLContext.getFunctionAddress("glDeleteObjectARB")) != 0 &
(glGetHandleARB = GLContext.getFunctionAddress("glGetHandleARB")) != 0 &
(glDetachObjectARB = GLContext.getFunctionAddress("glDetachObjectARB")) != 0 &
(glCreateShaderObjectARB = GLContext.getFunctionAddress("glCreateShaderObjectARB")) != 0 &
(glShaderSourceARB = GLContext.getFunctionAddress("glShaderSourceARB")) != 0 &
(glCompileShaderARB = GLContext.getFunctionAddress("glCompileShaderARB")) != 0 &
(glCreateProgramObjectARB = GLContext.getFunctionAddress("glCreateProgramObjectARB")) != 0 &
(glAttachObjectARB = GLContext.getFunctionAddress("glAttachObjectARB")) != 0 &
(glLinkProgramARB = GLContext.getFunctionAddress("glLinkProgramARB")) != 0 &
(glUseProgramObjectARB = GLContext.getFunctionAddress("glUseProgramObjectARB")) != 0 &
(glValidateProgramARB = GLContext.getFunctionAddress("glValidateProgramARB")) != 0 &
(glUniform1fARB = GLContext.getFunctionAddress("glUniform1fARB")) != 0 &
(glUniform2fARB = GLContext.getFunctionAddress("glUniform2fARB")) != 0 &
(glUniform3fARB = GLContext.getFunctionAddress("glUniform3fARB")) != 0 &
(glUniform4fARB = GLContext.getFunctionAddress("glUniform4fARB")) != 0 &
(glUniform1iARB = GLContext.getFunctionAddress("glUniform1iARB")) != 0 &
(glUniform2iARB = GLContext.getFunctionAddress("glUniform2iARB")) != 0 &
(glUniform3iARB = GLContext.getFunctionAddress("glUniform3iARB")) != 0 &
(glUniform4iARB = GLContext.getFunctionAddress("glUniform4iARB")) != 0 &
(glUniform1fvARB = GLContext.getFunctionAddress("glUniform1fvARB")) != 0 &
(glUniform2fvARB = GLContext.getFunctionAddress("glUniform2fvARB")) != 0 &
(glUniform3fvARB = GLContext.getFunctionAddress("glUniform3fvARB")) != 0 &
(glUniform4fvARB = GLContext.getFunctionAddress("glUniform4fvARB")) != 0 &
(glUniform1ivARB = GLContext.getFunctionAddress("glUniform1ivARB")) != 0 &
(glUniform2ivARB = GLContext.getFunctionAddress("glUniform2ivARB")) != 0 &
(glUniform3ivARB = GLContext.getFunctionAddress("glUniform3ivARB")) != 0 &
(glUniform4ivARB = GLContext.getFunctionAddress("glUniform4ivARB")) != 0 &
(glUniformMatrix2fvARB = GLContext.getFunctionAddress("glUniformMatrix2fvARB")) != 0 &
(glUniformMatrix3fvARB = GLContext.getFunctionAddress("glUniformMatrix3fvARB")) != 0 &
(glUniformMatrix4fvARB = GLContext.getFunctionAddress("glUniformMatrix4fvARB")) != 0 &
(glGetObjectParameterfvARB = GLContext.getFunctionAddress("glGetObjectParameterfvARB")) != 0 &
(glGetObjectParameterivARB = GLContext.getFunctionAddress("glGetObjectParameterivARB")) != 0 &
(glGetInfoLogARB = GLContext.getFunctionAddress("glGetInfoLogARB")) != 0 &
(glGetAttachedObjectsARB = GLContext.getFunctionAddress("glGetAttachedObjectsARB")) != 0 &
(glGetUniformLocationARB = GLContext.getFunctionAddress("glGetUniformLocationARB")) != 0 &
(glGetActiveUniformARB = GLContext.getFunctionAddress("glGetActiveUniformARB")) != 0 &
(glGetUniformfvARB = GLContext.getFunctionAddress("glGetUniformfvARB")) != 0 &
(glGetUniformivARB = GLContext.getFunctionAddress("glGetUniformivARB")) != 0 &
(glGetShaderSourceARB = GLContext.getFunctionAddress("glGetShaderSourceARB")) != 0;
}
private boolean ARB_shader_subroutine_initNativeFunctionAddresses() {
return
(glGetSubroutineUniformLocation = GLContext.getFunctionAddress("glGetSubroutineUniformLocation")) != 0 &
(glGetSubroutineIndex = GLContext.getFunctionAddress("glGetSubroutineIndex")) != 0 &
(glGetActiveSubroutineUniformiv = GLContext.getFunctionAddress("glGetActiveSubroutineUniformiv")) != 0 &
(glGetActiveSubroutineUniformName = GLContext.getFunctionAddress("glGetActiveSubroutineUniformName")) != 0 &
(glGetActiveSubroutineName = GLContext.getFunctionAddress("glGetActiveSubroutineName")) != 0 &
(glUniformSubroutinesuiv = GLContext.getFunctionAddress("glUniformSubroutinesuiv")) != 0 &
(glGetUniformSubroutineuiv = GLContext.getFunctionAddress("glGetUniformSubroutineuiv")) != 0 &
(glGetProgramStageiv = GLContext.getFunctionAddress("glGetProgramStageiv")) != 0;
}
private boolean ARB_shading_language_include_initNativeFunctionAddresses() {
return
(glNamedStringARB = GLContext.getFunctionAddress("glNamedStringARB")) != 0 &
(glDeleteNamedStringARB = GLContext.getFunctionAddress("glDeleteNamedStringARB")) != 0 &
(glCompileShaderIncludeARB = GLContext.getFunctionAddress("glCompileShaderIncludeARB")) != 0 &
(glIsNamedStringARB = GLContext.getFunctionAddress("glIsNamedStringARB")) != 0 &
(glGetNamedStringARB = GLContext.getFunctionAddress("glGetNamedStringARB")) != 0 &
(glGetNamedStringivARB = GLContext.getFunctionAddress("glGetNamedStringivARB")) != 0;
}
private boolean ARB_sync_initNativeFunctionAddresses() {
return
(glFenceSync = GLContext.getFunctionAddress("glFenceSync")) != 0 &
(glIsSync = GLContext.getFunctionAddress("glIsSync")) != 0 &
(glDeleteSync = GLContext.getFunctionAddress("glDeleteSync")) != 0 &
(glClientWaitSync = GLContext.getFunctionAddress("glClientWaitSync")) != 0 &
(glWaitSync = GLContext.getFunctionAddress("glWaitSync")) != 0 &
(glGetInteger64v = GLContext.getFunctionAddress("glGetInteger64v")) != 0 &
(glGetSynciv = GLContext.getFunctionAddress("glGetSynciv")) != 0;
}
private boolean ARB_tessellation_shader_initNativeFunctionAddresses() {
return
(glPatchParameteri = GLContext.getFunctionAddress("glPatchParameteri")) != 0 &
(glPatchParameterfv = GLContext.getFunctionAddress("glPatchParameterfv")) != 0;
}
private boolean ARB_texture_buffer_object_initNativeFunctionAddresses() {
return
(glTexBufferARB = GLContext.getFunctionAddress("glTexBufferARB")) != 0;
}
private boolean ARB_texture_compression_initNativeFunctionAddresses() {
return
(glCompressedTexImage1DARB = GLContext.getFunctionAddress("glCompressedTexImage1DARB")) != 0 &
(glCompressedTexImage2DARB = GLContext.getFunctionAddress("glCompressedTexImage2DARB")) != 0 &
(glCompressedTexImage3DARB = GLContext.getFunctionAddress("glCompressedTexImage3DARB")) != 0 &
(glCompressedTexSubImage1DARB = GLContext.getFunctionAddress("glCompressedTexSubImage1DARB")) != 0 &
(glCompressedTexSubImage2DARB = GLContext.getFunctionAddress("glCompressedTexSubImage2DARB")) != 0 &
(glCompressedTexSubImage3DARB = GLContext.getFunctionAddress("glCompressedTexSubImage3DARB")) != 0 &
(glGetCompressedTexImageARB = GLContext.getFunctionAddress("glGetCompressedTexImageARB")) != 0;
}
private boolean ARB_texture_multisample_initNativeFunctionAddresses() {
return
(glTexImage2DMultisample = GLContext.getFunctionAddress("glTexImage2DMultisample")) != 0 &
(glTexImage3DMultisample = GLContext.getFunctionAddress("glTexImage3DMultisample")) != 0 &
(glGetMultisamplefv = GLContext.getFunctionAddress("glGetMultisamplefv")) != 0 &
(glSampleMaski = GLContext.getFunctionAddress("glSampleMaski")) != 0;
}
private boolean ARB_timer_query_initNativeFunctionAddresses() {
return
(glQueryCounter = GLContext.getFunctionAddress("glQueryCounter")) != 0 &
(glGetQueryObjecti64v = GLContext.getFunctionAddress("glGetQueryObjecti64v")) != 0 &
(glGetQueryObjectui64v = GLContext.getFunctionAddress("glGetQueryObjectui64v")) != 0;
}
private boolean ARB_transform_feedback2_initNativeFunctionAddresses() {
return
(glBindTransformFeedback = GLContext.getFunctionAddress("glBindTransformFeedback")) != 0 &
(glDeleteTransformFeedbacks = GLContext.getFunctionAddress("glDeleteTransformFeedbacks")) != 0 &
(glGenTransformFeedbacks = GLContext.getFunctionAddress("glGenTransformFeedbacks")) != 0 &
(glIsTransformFeedback = GLContext.getFunctionAddress("glIsTransformFeedback")) != 0 &
(glPauseTransformFeedback = GLContext.getFunctionAddress("glPauseTransformFeedback")) != 0 &
(glResumeTransformFeedback = GLContext.getFunctionAddress("glResumeTransformFeedback")) != 0 &
(glDrawTransformFeedback = GLContext.getFunctionAddress("glDrawTransformFeedback")) != 0;
}
private boolean ARB_transform_feedback3_initNativeFunctionAddresses() {
return
(glDrawTransformFeedbackStream = GLContext.getFunctionAddress("glDrawTransformFeedbackStream")) != 0 &
(glBeginQueryIndexed = GLContext.getFunctionAddress("glBeginQueryIndexed")) != 0 &
(glEndQueryIndexed = GLContext.getFunctionAddress("glEndQueryIndexed")) != 0 &
(glGetQueryIndexediv = GLContext.getFunctionAddress("glGetQueryIndexediv")) != 0;
}
private boolean ARB_transpose_matrix_initNativeFunctionAddresses() {
return
(glLoadTransposeMatrixfARB = GLContext.getFunctionAddress("glLoadTransposeMatrixfARB")) != 0 &
(glMultTransposeMatrixfARB = GLContext.getFunctionAddress("glMultTransposeMatrixfARB")) != 0;
}
private boolean ARB_uniform_buffer_object_initNativeFunctionAddresses() {
return
(glGetUniformIndices = GLContext.getFunctionAddress("glGetUniformIndices")) != 0 &
(glGetActiveUniformsiv = GLContext.getFunctionAddress("glGetActiveUniformsiv")) != 0 &
(glGetActiveUniformName = GLContext.getFunctionAddress("glGetActiveUniformName")) != 0 &
(glGetUniformBlockIndex = GLContext.getFunctionAddress("glGetUniformBlockIndex")) != 0 &
(glGetActiveUniformBlockiv = GLContext.getFunctionAddress("glGetActiveUniformBlockiv")) != 0 &
(glGetActiveUniformBlockName = GLContext.getFunctionAddress("glGetActiveUniformBlockName")) != 0 &
(glBindBufferRange = GLContext.getFunctionAddress("glBindBufferRange")) != 0 &
(glBindBufferBase = GLContext.getFunctionAddress("glBindBufferBase")) != 0 &
(glGetIntegeri_v = GLContext.getFunctionAddress("glGetIntegeri_v")) != 0 &
(glUniformBlockBinding = GLContext.getFunctionAddress("glUniformBlockBinding")) != 0;
}
private boolean ARB_vertex_array_object_initNativeFunctionAddresses() {
return
(glBindVertexArray = GLContext.getFunctionAddress("glBindVertexArray")) != 0 &
(glDeleteVertexArrays = GLContext.getFunctionAddress("glDeleteVertexArrays")) != 0 &
(glGenVertexArrays = GLContext.getFunctionAddress("glGenVertexArrays")) != 0 &
(glIsVertexArray = GLContext.getFunctionAddress("glIsVertexArray")) != 0;
}
private boolean ARB_vertex_attrib_64bit_initNativeFunctionAddresses(Set<String> supported_extensions) {
return
(glVertexAttribL1d = GLContext.getFunctionAddress("glVertexAttribL1d")) != 0 &
(glVertexAttribL2d = GLContext.getFunctionAddress("glVertexAttribL2d")) != 0 &
(glVertexAttribL3d = GLContext.getFunctionAddress("glVertexAttribL3d")) != 0 &
(glVertexAttribL4d = GLContext.getFunctionAddress("glVertexAttribL4d")) != 0 &
(glVertexAttribL1dv = GLContext.getFunctionAddress("glVertexAttribL1dv")) != 0 &
(glVertexAttribL2dv = GLContext.getFunctionAddress("glVertexAttribL2dv")) != 0 &
(glVertexAttribL3dv = GLContext.getFunctionAddress("glVertexAttribL3dv")) != 0 &
(glVertexAttribL4dv = GLContext.getFunctionAddress("glVertexAttribL4dv")) != 0 &
(glVertexAttribLPointer = GLContext.getFunctionAddress("glVertexAttribLPointer")) != 0 &
(glGetVertexAttribLdv = GLContext.getFunctionAddress("glGetVertexAttribLdv")) != 0 &
(!supported_extensions.contains("EXT_direct_state_access") || (glVertexArrayVertexAttribLOffsetEXT = GLContext.getFunctionAddress("glVertexArrayVertexAttribLOffsetEXT")) != 0);
}
private boolean ARB_vertex_blend_initNativeFunctionAddresses() {
return
(glWeightbvARB = GLContext.getFunctionAddress("glWeightbvARB")) != 0 &
(glWeightsvARB = GLContext.getFunctionAddress("glWeightsvARB")) != 0 &
(glWeightivARB = GLContext.getFunctionAddress("glWeightivARB")) != 0 &
(glWeightfvARB = GLContext.getFunctionAddress("glWeightfvARB")) != 0 &
(glWeightdvARB = GLContext.getFunctionAddress("glWeightdvARB")) != 0 &
(glWeightubvARB = GLContext.getFunctionAddress("glWeightubvARB")) != 0 &
(glWeightusvARB = GLContext.getFunctionAddress("glWeightusvARB")) != 0 &
(glWeightuivARB = GLContext.getFunctionAddress("glWeightuivARB")) != 0 &
(glWeightPointerARB = GLContext.getFunctionAddress("glWeightPointerARB")) != 0 &
(glVertexBlendARB = GLContext.getFunctionAddress("glVertexBlendARB")) != 0;
}
private boolean ARB_vertex_program_initNativeFunctionAddresses() {
return
(glVertexAttrib1sARB = GLContext.getFunctionAddress("glVertexAttrib1sARB")) != 0 &
(glVertexAttrib1fARB = GLContext.getFunctionAddress("glVertexAttrib1fARB")) != 0 &
(glVertexAttrib1dARB = GLContext.getFunctionAddress("glVertexAttrib1dARB")) != 0 &
(glVertexAttrib2sARB = GLContext.getFunctionAddress("glVertexAttrib2sARB")) != 0 &
(glVertexAttrib2fARB = GLContext.getFunctionAddress("glVertexAttrib2fARB")) != 0 &
(glVertexAttrib2dARB = GLContext.getFunctionAddress("glVertexAttrib2dARB")) != 0 &
(glVertexAttrib3sARB = GLContext.getFunctionAddress("glVertexAttrib3sARB")) != 0 &
(glVertexAttrib3fARB = GLContext.getFunctionAddress("glVertexAttrib3fARB")) != 0 &
(glVertexAttrib3dARB = GLContext.getFunctionAddress("glVertexAttrib3dARB")) != 0 &
(glVertexAttrib4sARB = GLContext.getFunctionAddress("glVertexAttrib4sARB")) != 0 &
(glVertexAttrib4fARB = GLContext.getFunctionAddress("glVertexAttrib4fARB")) != 0 &
(glVertexAttrib4dARB = GLContext.getFunctionAddress("glVertexAttrib4dARB")) != 0 &
(glVertexAttrib4NubARB = GLContext.getFunctionAddress("glVertexAttrib4NubARB")) != 0 &
(glVertexAttribPointerARB = GLContext.getFunctionAddress("glVertexAttribPointerARB")) != 0 &
(glEnableVertexAttribArrayARB = GLContext.getFunctionAddress("glEnableVertexAttribArrayARB")) != 0 &
(glDisableVertexAttribArrayARB = GLContext.getFunctionAddress("glDisableVertexAttribArrayARB")) != 0 &
(glGetVertexAttribfvARB = GLContext.getFunctionAddress("glGetVertexAttribfvARB")) != 0 &
(glGetVertexAttribdvARB = GLContext.getFunctionAddress("glGetVertexAttribdvARB")) != 0 &
(glGetVertexAttribivARB = GLContext.getFunctionAddress("glGetVertexAttribivARB")) != 0 &
(glGetVertexAttribPointervARB = GLContext.getFunctionAddress("glGetVertexAttribPointervARB")) != 0;
}
private boolean ARB_vertex_shader_initNativeFunctionAddresses() {
return
(glVertexAttrib1sARB = GLContext.getFunctionAddress("glVertexAttrib1sARB")) != 0 &
(glVertexAttrib1fARB = GLContext.getFunctionAddress("glVertexAttrib1fARB")) != 0 &
(glVertexAttrib1dARB = GLContext.getFunctionAddress("glVertexAttrib1dARB")) != 0 &
(glVertexAttrib2sARB = GLContext.getFunctionAddress("glVertexAttrib2sARB")) != 0 &
(glVertexAttrib2fARB = GLContext.getFunctionAddress("glVertexAttrib2fARB")) != 0 &
(glVertexAttrib2dARB = GLContext.getFunctionAddress("glVertexAttrib2dARB")) != 0 &
(glVertexAttrib3sARB = GLContext.getFunctionAddress("glVertexAttrib3sARB")) != 0 &
(glVertexAttrib3fARB = GLContext.getFunctionAddress("glVertexAttrib3fARB")) != 0 &
(glVertexAttrib3dARB = GLContext.getFunctionAddress("glVertexAttrib3dARB")) != 0 &
(glVertexAttrib4sARB = GLContext.getFunctionAddress("glVertexAttrib4sARB")) != 0 &
(glVertexAttrib4fARB = GLContext.getFunctionAddress("glVertexAttrib4fARB")) != 0 &
(glVertexAttrib4dARB = GLContext.getFunctionAddress("glVertexAttrib4dARB")) != 0 &
(glVertexAttrib4NubARB = GLContext.getFunctionAddress("glVertexAttrib4NubARB")) != 0 &
(glVertexAttribPointerARB = GLContext.getFunctionAddress("glVertexAttribPointerARB")) != 0 &
(glEnableVertexAttribArrayARB = GLContext.getFunctionAddress("glEnableVertexAttribArrayARB")) != 0 &
(glDisableVertexAttribArrayARB = GLContext.getFunctionAddress("glDisableVertexAttribArrayARB")) != 0 &
(glBindAttribLocationARB = GLContext.getFunctionAddress("glBindAttribLocationARB")) != 0 &
(glGetActiveAttribARB = GLContext.getFunctionAddress("glGetActiveAttribARB")) != 0 &
(glGetAttribLocationARB = GLContext.getFunctionAddress("glGetAttribLocationARB")) != 0 &
(glGetVertexAttribfvARB = GLContext.getFunctionAddress("glGetVertexAttribfvARB")) != 0 &
(glGetVertexAttribdvARB = GLContext.getFunctionAddress("glGetVertexAttribdvARB")) != 0 &
(glGetVertexAttribivARB = GLContext.getFunctionAddress("glGetVertexAttribivARB")) != 0 &
(glGetVertexAttribPointervARB = GLContext.getFunctionAddress("glGetVertexAttribPointervARB")) != 0;
}
private boolean ARB_vertex_type_2_10_10_10_rev_initNativeFunctionAddresses() {
return
(glVertexP2ui = GLContext.getFunctionAddress("glVertexP2ui")) != 0 &
(glVertexP3ui = GLContext.getFunctionAddress("glVertexP3ui")) != 0 &
(glVertexP4ui = GLContext.getFunctionAddress("glVertexP4ui")) != 0 &
(glVertexP2uiv = GLContext.getFunctionAddress("glVertexP2uiv")) != 0 &
(glVertexP3uiv = GLContext.getFunctionAddress("glVertexP3uiv")) != 0 &
(glVertexP4uiv = GLContext.getFunctionAddress("glVertexP4uiv")) != 0 &
(glTexCoordP1ui = GLContext.getFunctionAddress("glTexCoordP1ui")) != 0 &
(glTexCoordP2ui = GLContext.getFunctionAddress("glTexCoordP2ui")) != 0 &
(glTexCoordP3ui = GLContext.getFunctionAddress("glTexCoordP3ui")) != 0 &
(glTexCoordP4ui = GLContext.getFunctionAddress("glTexCoordP4ui")) != 0 &
(glTexCoordP1uiv = GLContext.getFunctionAddress("glTexCoordP1uiv")) != 0 &
(glTexCoordP2uiv = GLContext.getFunctionAddress("glTexCoordP2uiv")) != 0 &
(glTexCoordP3uiv = GLContext.getFunctionAddress("glTexCoordP3uiv")) != 0 &
(glTexCoordP4uiv = GLContext.getFunctionAddress("glTexCoordP4uiv")) != 0 &
(glMultiTexCoordP1ui = GLContext.getFunctionAddress("glMultiTexCoordP1ui")) != 0 &
(glMultiTexCoordP2ui = GLContext.getFunctionAddress("glMultiTexCoordP2ui")) != 0 &
(glMultiTexCoordP3ui = GLContext.getFunctionAddress("glMultiTexCoordP3ui")) != 0 &
(glMultiTexCoordP4ui = GLContext.getFunctionAddress("glMultiTexCoordP4ui")) != 0 &
(glMultiTexCoordP1uiv = GLContext.getFunctionAddress("glMultiTexCoordP1uiv")) != 0 &
(glMultiTexCoordP2uiv = GLContext.getFunctionAddress("glMultiTexCoordP2uiv")) != 0 &
(glMultiTexCoordP3uiv = GLContext.getFunctionAddress("glMultiTexCoordP3uiv")) != 0 &
(glMultiTexCoordP4uiv = GLContext.getFunctionAddress("glMultiTexCoordP4uiv")) != 0 &
(glNormalP3ui = GLContext.getFunctionAddress("glNormalP3ui")) != 0 &
(glNormalP3uiv = GLContext.getFunctionAddress("glNormalP3uiv")) != 0 &
(glColorP3ui = GLContext.getFunctionAddress("glColorP3ui")) != 0 &
(glColorP4ui = GLContext.getFunctionAddress("glColorP4ui")) != 0 &
(glColorP3uiv = GLContext.getFunctionAddress("glColorP3uiv")) != 0 &
(glColorP4uiv = GLContext.getFunctionAddress("glColorP4uiv")) != 0 &
(glSecondaryColorP3ui = GLContext.getFunctionAddress("glSecondaryColorP3ui")) != 0 &
(glSecondaryColorP3uiv = GLContext.getFunctionAddress("glSecondaryColorP3uiv")) != 0 &
(glVertexAttribP1ui = GLContext.getFunctionAddress("glVertexAttribP1ui")) != 0 &
(glVertexAttribP2ui = GLContext.getFunctionAddress("glVertexAttribP2ui")) != 0 &
(glVertexAttribP3ui = GLContext.getFunctionAddress("glVertexAttribP3ui")) != 0 &
(glVertexAttribP4ui = GLContext.getFunctionAddress("glVertexAttribP4ui")) != 0 &
(glVertexAttribP1uiv = GLContext.getFunctionAddress("glVertexAttribP1uiv")) != 0 &
(glVertexAttribP2uiv = GLContext.getFunctionAddress("glVertexAttribP2uiv")) != 0 &
(glVertexAttribP3uiv = GLContext.getFunctionAddress("glVertexAttribP3uiv")) != 0 &
(glVertexAttribP4uiv = GLContext.getFunctionAddress("glVertexAttribP4uiv")) != 0;
}
private boolean ARB_viewport_array_initNativeFunctionAddresses() {
return
(glViewportArrayv = GLContext.getFunctionAddress("glViewportArrayv")) != 0 &
(glViewportIndexedf = GLContext.getFunctionAddress("glViewportIndexedf")) != 0 &
(glViewportIndexedfv = GLContext.getFunctionAddress("glViewportIndexedfv")) != 0 &
(glScissorArrayv = GLContext.getFunctionAddress("glScissorArrayv")) != 0 &
(glScissorIndexed = GLContext.getFunctionAddress("glScissorIndexed")) != 0 &
(glScissorIndexedv = GLContext.getFunctionAddress("glScissorIndexedv")) != 0 &
(glDepthRangeArrayv = GLContext.getFunctionAddress("glDepthRangeArrayv")) != 0 &
(glDepthRangeIndexed = GLContext.getFunctionAddress("glDepthRangeIndexed")) != 0 &
(glGetFloati_v = GLContext.getFunctionAddress("glGetFloati_v")) != 0 &
(glGetDoublei_v = GLContext.getFunctionAddress("glGetDoublei_v")) != 0 &
(glGetIntegerIndexedvEXT = GLContext.getFunctionAddress("glGetIntegerIndexedvEXT")) != 0 &
(glEnableIndexedEXT = GLContext.getFunctionAddress("glEnableIndexedEXT")) != 0 &
(glDisableIndexedEXT = GLContext.getFunctionAddress("glDisableIndexedEXT")) != 0 &
(glIsEnabledIndexedEXT = GLContext.getFunctionAddress("glIsEnabledIndexedEXT")) != 0;
}
private boolean ARB_window_pos_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(forwardCompatible || (glWindowPos2fARB = GLContext.getFunctionAddress("glWindowPos2fARB")) != 0) &
(forwardCompatible || (glWindowPos2dARB = GLContext.getFunctionAddress("glWindowPos2dARB")) != 0) &
(forwardCompatible || (glWindowPos2iARB = GLContext.getFunctionAddress("glWindowPos2iARB")) != 0) &
(forwardCompatible || (glWindowPos2sARB = GLContext.getFunctionAddress("glWindowPos2sARB")) != 0) &
(forwardCompatible || (glWindowPos3fARB = GLContext.getFunctionAddress("glWindowPos3fARB")) != 0) &
(forwardCompatible || (glWindowPos3dARB = GLContext.getFunctionAddress("glWindowPos3dARB")) != 0) &
(forwardCompatible || (glWindowPos3iARB = GLContext.getFunctionAddress("glWindowPos3iARB")) != 0) &
(forwardCompatible || (glWindowPos3sARB = GLContext.getFunctionAddress("glWindowPos3sARB")) != 0);
}
private boolean ATI_draw_buffers_initNativeFunctionAddresses() {
return
(glDrawBuffersATI = GLContext.getFunctionAddress("glDrawBuffersATI")) != 0;
}
private boolean ATI_element_array_initNativeFunctionAddresses() {
return
(glElementPointerATI = GLContext.getFunctionAddress("glElementPointerATI")) != 0 &
(glDrawElementArrayATI = GLContext.getFunctionAddress("glDrawElementArrayATI")) != 0 &
(glDrawRangeElementArrayATI = GLContext.getFunctionAddress("glDrawRangeElementArrayATI")) != 0;
}
private boolean ATI_envmap_bumpmap_initNativeFunctionAddresses() {
return
(glTexBumpParameterfvATI = GLContext.getFunctionAddress("glTexBumpParameterfvATI")) != 0 &
(glTexBumpParameterivATI = GLContext.getFunctionAddress("glTexBumpParameterivATI")) != 0 &
(glGetTexBumpParameterfvATI = GLContext.getFunctionAddress("glGetTexBumpParameterfvATI")) != 0 &
(glGetTexBumpParameterivATI = GLContext.getFunctionAddress("glGetTexBumpParameterivATI")) != 0;
}
private boolean ATI_fragment_shader_initNativeFunctionAddresses() {
return
(glGenFragmentShadersATI = GLContext.getFunctionAddress("glGenFragmentShadersATI")) != 0 &
(glBindFragmentShaderATI = GLContext.getFunctionAddress("glBindFragmentShaderATI")) != 0 &
(glDeleteFragmentShaderATI = GLContext.getFunctionAddress("glDeleteFragmentShaderATI")) != 0 &
(glBeginFragmentShaderATI = GLContext.getFunctionAddress("glBeginFragmentShaderATI")) != 0 &
(glEndFragmentShaderATI = GLContext.getFunctionAddress("glEndFragmentShaderATI")) != 0 &
(glPassTexCoordATI = GLContext.getFunctionAddress("glPassTexCoordATI")) != 0 &
(glSampleMapATI = GLContext.getFunctionAddress("glSampleMapATI")) != 0 &
(glColorFragmentOp1ATI = GLContext.getFunctionAddress("glColorFragmentOp1ATI")) != 0 &
(glColorFragmentOp2ATI = GLContext.getFunctionAddress("glColorFragmentOp2ATI")) != 0 &
(glColorFragmentOp3ATI = GLContext.getFunctionAddress("glColorFragmentOp3ATI")) != 0 &
(glAlphaFragmentOp1ATI = GLContext.getFunctionAddress("glAlphaFragmentOp1ATI")) != 0 &
(glAlphaFragmentOp2ATI = GLContext.getFunctionAddress("glAlphaFragmentOp2ATI")) != 0 &
(glAlphaFragmentOp3ATI = GLContext.getFunctionAddress("glAlphaFragmentOp3ATI")) != 0 &
(glSetFragmentShaderConstantATI = GLContext.getFunctionAddress("glSetFragmentShaderConstantATI")) != 0;
}
private boolean ATI_map_object_buffer_initNativeFunctionAddresses() {
return
(glMapObjectBufferATI = GLContext.getFunctionAddress("glMapObjectBufferATI")) != 0 &
(glUnmapObjectBufferATI = GLContext.getFunctionAddress("glUnmapObjectBufferATI")) != 0;
}
private boolean ATI_pn_triangles_initNativeFunctionAddresses() {
return
(glPNTrianglesfATI = GLContext.getFunctionAddress("glPNTrianglesfATI")) != 0 &
(glPNTrianglesiATI = GLContext.getFunctionAddress("glPNTrianglesiATI")) != 0;
}
private boolean ATI_separate_stencil_initNativeFunctionAddresses() {
return
(glStencilOpSeparateATI = GLContext.getFunctionAddress("glStencilOpSeparateATI")) != 0 &
(glStencilFuncSeparateATI = GLContext.getFunctionAddress("glStencilFuncSeparateATI")) != 0;
}
private boolean ATI_vertex_array_object_initNativeFunctionAddresses() {
return
(glNewObjectBufferATI = GLContext.getFunctionAddress("glNewObjectBufferATI")) != 0 &
(glIsObjectBufferATI = GLContext.getFunctionAddress("glIsObjectBufferATI")) != 0 &
(glUpdateObjectBufferATI = GLContext.getFunctionAddress("glUpdateObjectBufferATI")) != 0 &
(glGetObjectBufferfvATI = GLContext.getFunctionAddress("glGetObjectBufferfvATI")) != 0 &
(glGetObjectBufferivATI = GLContext.getFunctionAddress("glGetObjectBufferivATI")) != 0 &
(glFreeObjectBufferATI = GLContext.getFunctionAddress("glFreeObjectBufferATI")) != 0 &
(glArrayObjectATI = GLContext.getFunctionAddress("glArrayObjectATI")) != 0 &
(glGetArrayObjectfvATI = GLContext.getFunctionAddress("glGetArrayObjectfvATI")) != 0 &
(glGetArrayObjectivATI = GLContext.getFunctionAddress("glGetArrayObjectivATI")) != 0 &
(glVariantArrayObjectATI = GLContext.getFunctionAddress("glVariantArrayObjectATI")) != 0 &
(glGetVariantArrayObjectfvATI = GLContext.getFunctionAddress("glGetVariantArrayObjectfvATI")) != 0 &
(glGetVariantArrayObjectivATI = GLContext.getFunctionAddress("glGetVariantArrayObjectivATI")) != 0;
}
private boolean ATI_vertex_attrib_array_object_initNativeFunctionAddresses() {
return
(glVertexAttribArrayObjectATI = GLContext.getFunctionAddress("glVertexAttribArrayObjectATI")) != 0 &
(glGetVertexAttribArrayObjectfvATI = GLContext.getFunctionAddress("glGetVertexAttribArrayObjectfvATI")) != 0 &
(glGetVertexAttribArrayObjectivATI = GLContext.getFunctionAddress("glGetVertexAttribArrayObjectivATI")) != 0;
}
private boolean ATI_vertex_streams_initNativeFunctionAddresses() {
return
(glVertexStream2fATI = GLContext.getFunctionAddress("glVertexStream2fATI")) != 0 &
(glVertexStream2dATI = GLContext.getFunctionAddress("glVertexStream2dATI")) != 0 &
(glVertexStream2iATI = GLContext.getFunctionAddress("glVertexStream2iATI")) != 0 &
(glVertexStream2sATI = GLContext.getFunctionAddress("glVertexStream2sATI")) != 0 &
(glVertexStream3fATI = GLContext.getFunctionAddress("glVertexStream3fATI")) != 0 &
(glVertexStream3dATI = GLContext.getFunctionAddress("glVertexStream3dATI")) != 0 &
(glVertexStream3iATI = GLContext.getFunctionAddress("glVertexStream3iATI")) != 0 &
(glVertexStream3sATI = GLContext.getFunctionAddress("glVertexStream3sATI")) != 0 &
(glVertexStream4fATI = GLContext.getFunctionAddress("glVertexStream4fATI")) != 0 &
(glVertexStream4dATI = GLContext.getFunctionAddress("glVertexStream4dATI")) != 0 &
(glVertexStream4iATI = GLContext.getFunctionAddress("glVertexStream4iATI")) != 0 &
(glVertexStream4sATI = GLContext.getFunctionAddress("glVertexStream4sATI")) != 0 &
(glNormalStream3bATI = GLContext.getFunctionAddress("glNormalStream3bATI")) != 0 &
(glNormalStream3fATI = GLContext.getFunctionAddress("glNormalStream3fATI")) != 0 &
(glNormalStream3dATI = GLContext.getFunctionAddress("glNormalStream3dATI")) != 0 &
(glNormalStream3iATI = GLContext.getFunctionAddress("glNormalStream3iATI")) != 0 &
(glNormalStream3sATI = GLContext.getFunctionAddress("glNormalStream3sATI")) != 0 &
(glClientActiveVertexStreamATI = GLContext.getFunctionAddress("glClientActiveVertexStreamATI")) != 0 &
(glVertexBlendEnvfATI = GLContext.getFunctionAddress("glVertexBlendEnvfATI")) != 0 &
(glVertexBlendEnviATI = GLContext.getFunctionAddress("glVertexBlendEnviATI")) != 0;
}
private boolean EXT_bindable_uniform_initNativeFunctionAddresses() {
return
(glUniformBufferEXT = GLContext.getFunctionAddress("glUniformBufferEXT")) != 0 &
(glGetUniformBufferSizeEXT = GLContext.getFunctionAddress("glGetUniformBufferSizeEXT")) != 0 &
(glGetUniformOffsetEXT = GLContext.getFunctionAddress("glGetUniformOffsetEXT")) != 0;
}
private boolean EXT_blend_color_initNativeFunctionAddresses() {
return
(glBlendColorEXT = GLContext.getFunctionAddress("glBlendColorEXT")) != 0;
}
private boolean EXT_blend_equation_separate_initNativeFunctionAddresses() {
return
(glBlendEquationSeparateEXT = GLContext.getFunctionAddress("glBlendEquationSeparateEXT")) != 0;
}
private boolean EXT_blend_func_separate_initNativeFunctionAddresses() {
return
(glBlendFuncSeparateEXT = GLContext.getFunctionAddress("glBlendFuncSeparateEXT")) != 0;
}
private boolean EXT_blend_minmax_initNativeFunctionAddresses() {
return
(glBlendEquationEXT = GLContext.getFunctionAddress("glBlendEquationEXT")) != 0;
}
private boolean EXT_compiled_vertex_array_initNativeFunctionAddresses() {
return
(glLockArraysEXT = GLContext.getFunctionAddress("glLockArraysEXT")) != 0 &
(glUnlockArraysEXT = GLContext.getFunctionAddress("glUnlockArraysEXT")) != 0;
}
private boolean EXT_depth_bounds_test_initNativeFunctionAddresses() {
return
(glDepthBoundsEXT = GLContext.getFunctionAddress("glDepthBoundsEXT")) != 0;
}
private boolean EXT_direct_state_access_initNativeFunctionAddresses(boolean forwardCompatible,Set<String> supported_extensions) {
return
(forwardCompatible || (glClientAttribDefaultEXT = GLContext.getFunctionAddress("glClientAttribDefaultEXT")) != 0) &
(forwardCompatible || (glPushClientAttribDefaultEXT = GLContext.getFunctionAddress("glPushClientAttribDefaultEXT")) != 0) &
(forwardCompatible || (glMatrixLoadfEXT = GLContext.getFunctionAddress("glMatrixLoadfEXT")) != 0) &
(forwardCompatible || (glMatrixLoaddEXT = GLContext.getFunctionAddress("glMatrixLoaddEXT")) != 0) &
(forwardCompatible || (glMatrixMultfEXT = GLContext.getFunctionAddress("glMatrixMultfEXT")) != 0) &
(forwardCompatible || (glMatrixMultdEXT = GLContext.getFunctionAddress("glMatrixMultdEXT")) != 0) &
(forwardCompatible || (glMatrixLoadIdentityEXT = GLContext.getFunctionAddress("glMatrixLoadIdentityEXT")) != 0) &
(forwardCompatible || (glMatrixRotatefEXT = GLContext.getFunctionAddress("glMatrixRotatefEXT")) != 0) &
(forwardCompatible || (glMatrixRotatedEXT = GLContext.getFunctionAddress("glMatrixRotatedEXT")) != 0) &
(forwardCompatible || (glMatrixScalefEXT = GLContext.getFunctionAddress("glMatrixScalefEXT")) != 0) &
(forwardCompatible || (glMatrixScaledEXT = GLContext.getFunctionAddress("glMatrixScaledEXT")) != 0) &
(forwardCompatible || (glMatrixTranslatefEXT = GLContext.getFunctionAddress("glMatrixTranslatefEXT")) != 0) &
(forwardCompatible || (glMatrixTranslatedEXT = GLContext.getFunctionAddress("glMatrixTranslatedEXT")) != 0) &
(forwardCompatible || (glMatrixOrthoEXT = GLContext.getFunctionAddress("glMatrixOrthoEXT")) != 0) &
(forwardCompatible || (glMatrixFrustumEXT = GLContext.getFunctionAddress("glMatrixFrustumEXT")) != 0) &
(forwardCompatible || (glMatrixPushEXT = GLContext.getFunctionAddress("glMatrixPushEXT")) != 0) &
(forwardCompatible || (glMatrixPopEXT = GLContext.getFunctionAddress("glMatrixPopEXT")) != 0) &
(glTextureParameteriEXT = GLContext.getFunctionAddress("glTextureParameteriEXT")) != 0 &
(glTextureParameterivEXT = GLContext.getFunctionAddress("glTextureParameterivEXT")) != 0 &
(glTextureParameterfEXT = GLContext.getFunctionAddress("glTextureParameterfEXT")) != 0 &
(glTextureParameterfvEXT = GLContext.getFunctionAddress("glTextureParameterfvEXT")) != 0 &
(glTextureImage1DEXT = GLContext.getFunctionAddress("glTextureImage1DEXT")) != 0 &
(glTextureImage2DEXT = GLContext.getFunctionAddress("glTextureImage2DEXT")) != 0 &
(glTextureSubImage1DEXT = GLContext.getFunctionAddress("glTextureSubImage1DEXT")) != 0 &
(glTextureSubImage2DEXT = GLContext.getFunctionAddress("glTextureSubImage2DEXT")) != 0 &
(glCopyTextureImage1DEXT = GLContext.getFunctionAddress("glCopyTextureImage1DEXT")) != 0 &
(glCopyTextureImage2DEXT = GLContext.getFunctionAddress("glCopyTextureImage2DEXT")) != 0 &
(glCopyTextureSubImage1DEXT = GLContext.getFunctionAddress("glCopyTextureSubImage1DEXT")) != 0 &
(glCopyTextureSubImage2DEXT = GLContext.getFunctionAddress("glCopyTextureSubImage2DEXT")) != 0 &
(glGetTextureImageEXT = GLContext.getFunctionAddress("glGetTextureImageEXT")) != 0 &
(glGetTextureParameterfvEXT = GLContext.getFunctionAddress("glGetTextureParameterfvEXT")) != 0 &
(glGetTextureParameterivEXT = GLContext.getFunctionAddress("glGetTextureParameterivEXT")) != 0 &
(glGetTextureLevelParameterfvEXT = GLContext.getFunctionAddress("glGetTextureLevelParameterfvEXT")) != 0 &
(glGetTextureLevelParameterivEXT = GLContext.getFunctionAddress("glGetTextureLevelParameterivEXT")) != 0 &
(!supported_extensions.contains("OpenGL12") || (glTextureImage3DEXT = GLContext.getFunctionAddress("glTextureImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL12") || (glTextureSubImage3DEXT = GLContext.getFunctionAddress("glTextureSubImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL12") || (glCopyTextureSubImage3DEXT = GLContext.getFunctionAddress("glCopyTextureSubImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glBindMultiTextureEXT = GLContext.getFunctionAddress("glBindMultiTextureEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexCoordPointerEXT = GLContext.getFunctionAddress("glMultiTexCoordPointerEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexEnvfEXT = GLContext.getFunctionAddress("glMultiTexEnvfEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexEnvfvEXT = GLContext.getFunctionAddress("glMultiTexEnvfvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexEnviEXT = GLContext.getFunctionAddress("glMultiTexEnviEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexEnvivEXT = GLContext.getFunctionAddress("glMultiTexEnvivEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGendEXT = GLContext.getFunctionAddress("glMultiTexGendEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGendvEXT = GLContext.getFunctionAddress("glMultiTexGendvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGenfEXT = GLContext.getFunctionAddress("glMultiTexGenfEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGenfvEXT = GLContext.getFunctionAddress("glMultiTexGenfvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGeniEXT = GLContext.getFunctionAddress("glMultiTexGeniEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMultiTexGenivEXT = GLContext.getFunctionAddress("glMultiTexGenivEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glGetMultiTexEnvfvEXT = GLContext.getFunctionAddress("glGetMultiTexEnvfvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glGetMultiTexEnvivEXT = GLContext.getFunctionAddress("glGetMultiTexEnvivEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glGetMultiTexGendvEXT = GLContext.getFunctionAddress("glGetMultiTexGendvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glGetMultiTexGenfvEXT = GLContext.getFunctionAddress("glGetMultiTexGenfvEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glGetMultiTexGenivEXT = GLContext.getFunctionAddress("glGetMultiTexGenivEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexParameteriEXT = GLContext.getFunctionAddress("glMultiTexParameteriEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexParameterivEXT = GLContext.getFunctionAddress("glMultiTexParameterivEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexParameterfEXT = GLContext.getFunctionAddress("glMultiTexParameterfEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexParameterfvEXT = GLContext.getFunctionAddress("glMultiTexParameterfvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexImage1DEXT = GLContext.getFunctionAddress("glMultiTexImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexImage2DEXT = GLContext.getFunctionAddress("glMultiTexImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexSubImage1DEXT = GLContext.getFunctionAddress("glMultiTexSubImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexSubImage2DEXT = GLContext.getFunctionAddress("glMultiTexSubImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCopyMultiTexImage1DEXT = GLContext.getFunctionAddress("glCopyMultiTexImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCopyMultiTexImage2DEXT = GLContext.getFunctionAddress("glCopyMultiTexImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCopyMultiTexSubImage1DEXT = GLContext.getFunctionAddress("glCopyMultiTexSubImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCopyMultiTexSubImage2DEXT = GLContext.getFunctionAddress("glCopyMultiTexSubImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetMultiTexImageEXT = GLContext.getFunctionAddress("glGetMultiTexImageEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetMultiTexParameterfvEXT = GLContext.getFunctionAddress("glGetMultiTexParameterfvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetMultiTexParameterivEXT = GLContext.getFunctionAddress("glGetMultiTexParameterivEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetMultiTexLevelParameterfvEXT = GLContext.getFunctionAddress("glGetMultiTexLevelParameterfvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetMultiTexLevelParameterivEXT = GLContext.getFunctionAddress("glGetMultiTexLevelParameterivEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexImage3DEXT = GLContext.getFunctionAddress("glMultiTexImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glMultiTexSubImage3DEXT = GLContext.getFunctionAddress("glMultiTexSubImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCopyMultiTexSubImage3DEXT = GLContext.getFunctionAddress("glCopyMultiTexSubImage3DEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glEnableClientStateIndexedEXT = GLContext.getFunctionAddress("glEnableClientStateIndexedEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glDisableClientStateIndexedEXT = GLContext.getFunctionAddress("glDisableClientStateIndexedEXT")) != 0) &
((!supported_extensions.contains("OpenGL30") || (glEnableClientStateiEXT = GLContext.getFunctionAddress("glEnableClientStateiEXT")) != 0) || true) &
((!supported_extensions.contains("OpenGL30") || (glDisableClientStateiEXT = GLContext.getFunctionAddress("glDisableClientStateiEXT")) != 0) || true) &
(!supported_extensions.contains("OpenGL13") || (glGetFloatIndexedvEXT = GLContext.getFunctionAddress("glGetFloatIndexedvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetDoubleIndexedvEXT = GLContext.getFunctionAddress("glGetDoubleIndexedvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetPointerIndexedvEXT = GLContext.getFunctionAddress("glGetPointerIndexedvEXT")) != 0) &
((!supported_extensions.contains("OpenGL30") || (glGetFloati_vEXT = GLContext.getFunctionAddress("glGetFloati_vEXT")) != 0) || true) &
((!supported_extensions.contains("OpenGL30") || (glGetDoublei_vEXT = GLContext.getFunctionAddress("glGetDoublei_vEXT")) != 0) || true) &
((!supported_extensions.contains("OpenGL30") || (glGetPointeri_vEXT = GLContext.getFunctionAddress("glGetPointeri_vEXT")) != 0) || true) &
(!supported_extensions.contains("OpenGL13") || (glEnableIndexedEXT = GLContext.getFunctionAddress("glEnableIndexedEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glDisableIndexedEXT = GLContext.getFunctionAddress("glDisableIndexedEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glIsEnabledIndexedEXT = GLContext.getFunctionAddress("glIsEnabledIndexedEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetIntegerIndexedvEXT = GLContext.getFunctionAddress("glGetIntegerIndexedvEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetBooleanIndexedvEXT = GLContext.getFunctionAddress("glGetBooleanIndexedvEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glNamedProgramStringEXT = GLContext.getFunctionAddress("glNamedProgramStringEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glNamedProgramLocalParameter4dEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameter4dEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glNamedProgramLocalParameter4dvEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameter4dvEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glNamedProgramLocalParameter4fEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameter4fEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glNamedProgramLocalParameter4fvEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameter4fvEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glGetNamedProgramLocalParameterdvEXT = GLContext.getFunctionAddress("glGetNamedProgramLocalParameterdvEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glGetNamedProgramLocalParameterfvEXT = GLContext.getFunctionAddress("glGetNamedProgramLocalParameterfvEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glGetNamedProgramivEXT = GLContext.getFunctionAddress("glGetNamedProgramivEXT")) != 0) &
(!supported_extensions.contains("GL_ARB_vertex_program") || (glGetNamedProgramStringEXT = GLContext.getFunctionAddress("glGetNamedProgramStringEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureImage3DEXT = GLContext.getFunctionAddress("glCompressedTextureImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureImage2DEXT = GLContext.getFunctionAddress("glCompressedTextureImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureImage1DEXT = GLContext.getFunctionAddress("glCompressedTextureImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureSubImage3DEXT = GLContext.getFunctionAddress("glCompressedTextureSubImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureSubImage2DEXT = GLContext.getFunctionAddress("glCompressedTextureSubImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedTextureSubImage1DEXT = GLContext.getFunctionAddress("glCompressedTextureSubImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetCompressedTextureImageEXT = GLContext.getFunctionAddress("glGetCompressedTextureImageEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexImage3DEXT = GLContext.getFunctionAddress("glCompressedMultiTexImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexImage2DEXT = GLContext.getFunctionAddress("glCompressedMultiTexImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexImage1DEXT = GLContext.getFunctionAddress("glCompressedMultiTexImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexSubImage3DEXT = GLContext.getFunctionAddress("glCompressedMultiTexSubImage3DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexSubImage2DEXT = GLContext.getFunctionAddress("glCompressedMultiTexSubImage2DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glCompressedMultiTexSubImage1DEXT = GLContext.getFunctionAddress("glCompressedMultiTexSubImage1DEXT")) != 0) &
(!supported_extensions.contains("OpenGL13") || (glGetCompressedMultiTexImageEXT = GLContext.getFunctionAddress("glGetCompressedMultiTexImageEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMatrixLoadTransposefEXT = GLContext.getFunctionAddress("glMatrixLoadTransposefEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMatrixLoadTransposedEXT = GLContext.getFunctionAddress("glMatrixLoadTransposedEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMatrixMultTransposefEXT = GLContext.getFunctionAddress("glMatrixMultTransposefEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL13") || (glMatrixMultTransposedEXT = GLContext.getFunctionAddress("glMatrixMultTransposedEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glNamedBufferDataEXT = GLContext.getFunctionAddress("glNamedBufferDataEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glNamedBufferSubDataEXT = GLContext.getFunctionAddress("glNamedBufferSubDataEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glMapNamedBufferEXT = GLContext.getFunctionAddress("glMapNamedBufferEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glUnmapNamedBufferEXT = GLContext.getFunctionAddress("glUnmapNamedBufferEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glGetNamedBufferParameterivEXT = GLContext.getFunctionAddress("glGetNamedBufferParameterivEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glGetNamedBufferPointervEXT = GLContext.getFunctionAddress("glGetNamedBufferPointervEXT")) != 0) &
(!supported_extensions.contains("OpenGL15") || (glGetNamedBufferSubDataEXT = GLContext.getFunctionAddress("glGetNamedBufferSubDataEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform1fEXT = GLContext.getFunctionAddress("glProgramUniform1fEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform2fEXT = GLContext.getFunctionAddress("glProgramUniform2fEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform3fEXT = GLContext.getFunctionAddress("glProgramUniform3fEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform4fEXT = GLContext.getFunctionAddress("glProgramUniform4fEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform1iEXT = GLContext.getFunctionAddress("glProgramUniform1iEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform2iEXT = GLContext.getFunctionAddress("glProgramUniform2iEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform3iEXT = GLContext.getFunctionAddress("glProgramUniform3iEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform4iEXT = GLContext.getFunctionAddress("glProgramUniform4iEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform1fvEXT = GLContext.getFunctionAddress("glProgramUniform1fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform2fvEXT = GLContext.getFunctionAddress("glProgramUniform2fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform3fvEXT = GLContext.getFunctionAddress("glProgramUniform3fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform4fvEXT = GLContext.getFunctionAddress("glProgramUniform4fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform1ivEXT = GLContext.getFunctionAddress("glProgramUniform1ivEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform2ivEXT = GLContext.getFunctionAddress("glProgramUniform2ivEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform3ivEXT = GLContext.getFunctionAddress("glProgramUniform3ivEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniform4ivEXT = GLContext.getFunctionAddress("glProgramUniform4ivEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniformMatrix2fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniformMatrix3fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL20") || (glProgramUniformMatrix4fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix2x3fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2x3fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix3x2fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3x2fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix2x4fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix2x4fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix4x2fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4x2fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix3x4fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix3x4fvEXT")) != 0) &
(!supported_extensions.contains("OpenGL21") || (glProgramUniformMatrix4x3fvEXT = GLContext.getFunctionAddress("glProgramUniformMatrix4x3fvEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_buffer_object") || (glTextureBufferEXT = GLContext.getFunctionAddress("glTextureBufferEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_buffer_object") || (glMultiTexBufferEXT = GLContext.getFunctionAddress("glMultiTexBufferEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glTextureParameterIivEXT = GLContext.getFunctionAddress("glTextureParameterIivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glTextureParameterIuivEXT = GLContext.getFunctionAddress("glTextureParameterIuivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glGetTextureParameterIivEXT = GLContext.getFunctionAddress("glGetTextureParameterIivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glGetTextureParameterIuivEXT = GLContext.getFunctionAddress("glGetTextureParameterIuivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glMultiTexParameterIivEXT = GLContext.getFunctionAddress("glMultiTexParameterIivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glMultiTexParameterIuivEXT = GLContext.getFunctionAddress("glMultiTexParameterIuivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glGetMultiTexParameterIivEXT = GLContext.getFunctionAddress("glGetMultiTexParameterIivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_texture_integer") || (glGetMultiTexParameterIuivEXT = GLContext.getFunctionAddress("glGetMultiTexParameterIuivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform1uiEXT = GLContext.getFunctionAddress("glProgramUniform1uiEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform2uiEXT = GLContext.getFunctionAddress("glProgramUniform2uiEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform3uiEXT = GLContext.getFunctionAddress("glProgramUniform3uiEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform4uiEXT = GLContext.getFunctionAddress("glProgramUniform4uiEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform1uivEXT = GLContext.getFunctionAddress("glProgramUniform1uivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform2uivEXT = GLContext.getFunctionAddress("glProgramUniform2uivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform3uivEXT = GLContext.getFunctionAddress("glProgramUniform3uivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_shader4") || (glProgramUniform4uivEXT = GLContext.getFunctionAddress("glProgramUniform4uivEXT")) != 0) &
(!supported_extensions.contains("GL_EXT_gpu_program_parameters") || (glNamedProgramLocalParameters4fvEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameters4fvEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParameterI4iEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameterI4iEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParameterI4ivEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameterI4ivEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParametersI4ivEXT = GLContext.getFunctionAddress("glNamedProgramLocalParametersI4ivEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParameterI4uiEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameterI4uiEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParameterI4uivEXT = GLContext.getFunctionAddress("glNamedProgramLocalParameterI4uivEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glNamedProgramLocalParametersI4uivEXT = GLContext.getFunctionAddress("glNamedProgramLocalParametersI4uivEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glGetNamedProgramLocalParameterIivEXT = GLContext.getFunctionAddress("glGetNamedProgramLocalParameterIivEXT")) != 0) &
(!supported_extensions.contains("GL_NV_gpu_program4") || (glGetNamedProgramLocalParameterIuivEXT = GLContext.getFunctionAddress("glGetNamedProgramLocalParameterIuivEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glNamedRenderbufferStorageEXT = GLContext.getFunctionAddress("glNamedRenderbufferStorageEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glGetNamedRenderbufferParameterivEXT = GLContext.getFunctionAddress("glGetNamedRenderbufferParameterivEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_multisample")) || (glNamedRenderbufferStorageMultisampleEXT = GLContext.getFunctionAddress("glNamedRenderbufferStorageMultisampleEXT")) != 0) &
(!supported_extensions.contains("GL_NV_framebuffer_multisample_coverage") || (glNamedRenderbufferStorageMultisampleCoverageEXT = GLContext.getFunctionAddress("glNamedRenderbufferStorageMultisampleCoverageEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glCheckNamedFramebufferStatusEXT = GLContext.getFunctionAddress("glCheckNamedFramebufferStatusEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glNamedFramebufferTexture1DEXT = GLContext.getFunctionAddress("glNamedFramebufferTexture1DEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glNamedFramebufferTexture2DEXT = GLContext.getFunctionAddress("glNamedFramebufferTexture2DEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glNamedFramebufferTexture3DEXT = GLContext.getFunctionAddress("glNamedFramebufferTexture3DEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glNamedFramebufferRenderbufferEXT = GLContext.getFunctionAddress("glNamedFramebufferRenderbufferEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glGetNamedFramebufferAttachmentParameterivEXT = GLContext.getFunctionAddress("glGetNamedFramebufferAttachmentParameterivEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glGenerateTextureMipmapEXT = GLContext.getFunctionAddress("glGenerateTextureMipmapEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glGenerateMultiTexMipmapEXT = GLContext.getFunctionAddress("glGenerateMultiTexMipmapEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glFramebufferDrawBufferEXT = GLContext.getFunctionAddress("glFramebufferDrawBufferEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glFramebufferDrawBuffersEXT = GLContext.getFunctionAddress("glFramebufferDrawBuffersEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glFramebufferReadBufferEXT = GLContext.getFunctionAddress("glFramebufferReadBufferEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL30") || supported_extensions.contains("GL_EXT_framebuffer_object")) || (glGetFramebufferParameterivEXT = GLContext.getFunctionAddress("glGetFramebufferParameterivEXT")) != 0) &
(!(false || supported_extensions.contains("OpenGL31") || supported_extensions.contains("GL_ARB_copy_buffer")) || (glNamedCopyBufferSubDataEXT = GLContext.getFunctionAddress("glNamedCopyBufferSubDataEXT")) != 0) &
(!(false || supported_extensions.contains("GL_EXT_geometry_shader4") || supported_extensions.contains("NV_geometry_program4")) || (glNamedFramebufferTextureEXT = GLContext.getFunctionAddress("glNamedFramebufferTextureEXT")) != 0) &
(!(false || supported_extensions.contains("GL_EXT_geometry_shader4") || supported_extensions.contains("NV_geometry_program4")) || (glNamedFramebufferTextureLayerEXT = GLContext.getFunctionAddress("glNamedFramebufferTextureLayerEXT")) != 0) &
(!(false || supported_extensions.contains("GL_EXT_geometry_shader4") || supported_extensions.contains("NV_geometry_program4")) || (glNamedFramebufferTextureFaceEXT = GLContext.getFunctionAddress("glNamedFramebufferTextureFaceEXT")) != 0) &
(!supported_extensions.contains("GL_NV_explicit_multisample") || (glTextureRenderbufferEXT = GLContext.getFunctionAddress("glTextureRenderbufferEXT")) != 0) &
(!supported_extensions.contains("GL_NV_explicit_multisample") || (glMultiTexRenderbufferEXT = GLContext.getFunctionAddress("glMultiTexRenderbufferEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayVertexOffsetEXT = GLContext.getFunctionAddress("glVertexArrayVertexOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayColorOffsetEXT = GLContext.getFunctionAddress("glVertexArrayColorOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayEdgeFlagOffsetEXT = GLContext.getFunctionAddress("glVertexArrayEdgeFlagOffsetEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glVertexArrayIndexOffsetEXT = GLContext.getFunctionAddress("glVertexArrayIndexOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayNormalOffsetEXT = GLContext.getFunctionAddress("glVertexArrayNormalOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayTexCoordOffsetEXT = GLContext.getFunctionAddress("glVertexArrayTexCoordOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayMultiTexCoordOffsetEXT = GLContext.getFunctionAddress("glVertexArrayMultiTexCoordOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArrayFogCoordOffsetEXT = GLContext.getFunctionAddress("glVertexArrayFogCoordOffsetEXT")) != 0) &
(forwardCompatible || !supported_extensions.contains("OpenGL30") || (glVertexArraySecondaryColorOffsetEXT = GLContext.getFunctionAddress("glVertexArraySecondaryColorOffsetEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glVertexArrayVertexAttribOffsetEXT = GLContext.getFunctionAddress("glVertexArrayVertexAttribOffsetEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glVertexArrayVertexAttribIOffsetEXT = GLContext.getFunctionAddress("glVertexArrayVertexAttribIOffsetEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glEnableVertexArrayEXT = GLContext.getFunctionAddress("glEnableVertexArrayEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glDisableVertexArrayEXT = GLContext.getFunctionAddress("glDisableVertexArrayEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glEnableVertexArrayAttribEXT = GLContext.getFunctionAddress("glEnableVertexArrayAttribEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glDisableVertexArrayAttribEXT = GLContext.getFunctionAddress("glDisableVertexArrayAttribEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glGetVertexArrayIntegervEXT = GLContext.getFunctionAddress("glGetVertexArrayIntegervEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glGetVertexArrayPointervEXT = GLContext.getFunctionAddress("glGetVertexArrayPointervEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glGetVertexArrayIntegeri_vEXT = GLContext.getFunctionAddress("glGetVertexArrayIntegeri_vEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glGetVertexArrayPointeri_vEXT = GLContext.getFunctionAddress("glGetVertexArrayPointeri_vEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glMapNamedBufferRangeEXT = GLContext.getFunctionAddress("glMapNamedBufferRangeEXT")) != 0) &
(!supported_extensions.contains("OpenGL30") || (glFlushMappedNamedBufferRangeEXT = GLContext.getFunctionAddress("glFlushMappedNamedBufferRangeEXT")) != 0);
}
private boolean EXT_draw_buffers2_initNativeFunctionAddresses() {
return
(glColorMaskIndexedEXT = GLContext.getFunctionAddress("glColorMaskIndexedEXT")) != 0 &
(glGetBooleanIndexedvEXT = GLContext.getFunctionAddress("glGetBooleanIndexedvEXT")) != 0 &
(glGetIntegerIndexedvEXT = GLContext.getFunctionAddress("glGetIntegerIndexedvEXT")) != 0 &
(glEnableIndexedEXT = GLContext.getFunctionAddress("glEnableIndexedEXT")) != 0 &
(glDisableIndexedEXT = GLContext.getFunctionAddress("glDisableIndexedEXT")) != 0 &
(glIsEnabledIndexedEXT = GLContext.getFunctionAddress("glIsEnabledIndexedEXT")) != 0;
}
private boolean EXT_draw_instanced_initNativeFunctionAddresses() {
return
(glDrawArraysInstancedEXT = GLContext.getFunctionAddress("glDrawArraysInstancedEXT")) != 0 &
(glDrawElementsInstancedEXT = GLContext.getFunctionAddress("glDrawElementsInstancedEXT")) != 0;
}
private boolean EXT_draw_range_elements_initNativeFunctionAddresses() {
return
(glDrawRangeElementsEXT = GLContext.getFunctionAddress("glDrawRangeElementsEXT")) != 0;
}
private boolean EXT_fog_coord_initNativeFunctionAddresses() {
return
(glFogCoordfEXT = GLContext.getFunctionAddress("glFogCoordfEXT")) != 0 &
(glFogCoorddEXT = GLContext.getFunctionAddress("glFogCoorddEXT")) != 0 &
(glFogCoordPointerEXT = GLContext.getFunctionAddress("glFogCoordPointerEXT")) != 0;
}
private boolean EXT_framebuffer_blit_initNativeFunctionAddresses() {
return
(glBlitFramebufferEXT = GLContext.getFunctionAddress("glBlitFramebufferEXT")) != 0;
}
private boolean EXT_framebuffer_multisample_initNativeFunctionAddresses() {
return
(glRenderbufferStorageMultisampleEXT = GLContext.getFunctionAddress("glRenderbufferStorageMultisampleEXT")) != 0;
}
private boolean EXT_framebuffer_object_initNativeFunctionAddresses() {
return
(glIsRenderbufferEXT = GLContext.getFunctionAddress("glIsRenderbufferEXT")) != 0 &
(glBindRenderbufferEXT = GLContext.getFunctionAddress("glBindRenderbufferEXT")) != 0 &
(glDeleteRenderbuffersEXT = GLContext.getFunctionAddress("glDeleteRenderbuffersEXT")) != 0 &
(glGenRenderbuffersEXT = GLContext.getFunctionAddress("glGenRenderbuffersEXT")) != 0 &
(glRenderbufferStorageEXT = GLContext.getFunctionAddress("glRenderbufferStorageEXT")) != 0 &
(glGetRenderbufferParameterivEXT = GLContext.getFunctionAddress("glGetRenderbufferParameterivEXT")) != 0 &
(glIsFramebufferEXT = GLContext.getFunctionAddress("glIsFramebufferEXT")) != 0 &
(glBindFramebufferEXT = GLContext.getFunctionAddress("glBindFramebufferEXT")) != 0 &
(glDeleteFramebuffersEXT = GLContext.getFunctionAddress("glDeleteFramebuffersEXT")) != 0 &
(glGenFramebuffersEXT = GLContext.getFunctionAddress("glGenFramebuffersEXT")) != 0 &
(glCheckFramebufferStatusEXT = GLContext.getFunctionAddress("glCheckFramebufferStatusEXT")) != 0 &
(glFramebufferTexture1DEXT = GLContext.getFunctionAddress("glFramebufferTexture1DEXT")) != 0 &
(glFramebufferTexture2DEXT = GLContext.getFunctionAddress("glFramebufferTexture2DEXT")) != 0 &
(glFramebufferTexture3DEXT = GLContext.getFunctionAddress("glFramebufferTexture3DEXT")) != 0 &
(glFramebufferRenderbufferEXT = GLContext.getFunctionAddress("glFramebufferRenderbufferEXT")) != 0 &
(glGetFramebufferAttachmentParameterivEXT = GLContext.getFunctionAddress("glGetFramebufferAttachmentParameterivEXT")) != 0 &
(glGenerateMipmapEXT = GLContext.getFunctionAddress("glGenerateMipmapEXT")) != 0;
}
private boolean EXT_geometry_shader4_initNativeFunctionAddresses() {
return
(glProgramParameteriEXT = GLContext.getFunctionAddress("glProgramParameteriEXT")) != 0 &
(glFramebufferTextureEXT = GLContext.getFunctionAddress("glFramebufferTextureEXT")) != 0 &
(glFramebufferTextureLayerEXT = GLContext.getFunctionAddress("glFramebufferTextureLayerEXT")) != 0 &
(glFramebufferTextureFaceEXT = GLContext.getFunctionAddress("glFramebufferTextureFaceEXT")) != 0;
}
private boolean EXT_gpu_program_parameters_initNativeFunctionAddresses() {
return
(glProgramEnvParameters4fvEXT = GLContext.getFunctionAddress("glProgramEnvParameters4fvEXT")) != 0 &
(glProgramLocalParameters4fvEXT = GLContext.getFunctionAddress("glProgramLocalParameters4fvEXT")) != 0;
}
private boolean EXT_gpu_shader4_initNativeFunctionAddresses() {
return
(glVertexAttribI1iEXT = GLContext.getFunctionAddress("glVertexAttribI1iEXT")) != 0 &
(glVertexAttribI2iEXT = GLContext.getFunctionAddress("glVertexAttribI2iEXT")) != 0 &
(glVertexAttribI3iEXT = GLContext.getFunctionAddress("glVertexAttribI3iEXT")) != 0 &
(glVertexAttribI4iEXT = GLContext.getFunctionAddress("glVertexAttribI4iEXT")) != 0 &
(glVertexAttribI1uiEXT = GLContext.getFunctionAddress("glVertexAttribI1uiEXT")) != 0 &
(glVertexAttribI2uiEXT = GLContext.getFunctionAddress("glVertexAttribI2uiEXT")) != 0 &
(glVertexAttribI3uiEXT = GLContext.getFunctionAddress("glVertexAttribI3uiEXT")) != 0 &
(glVertexAttribI4uiEXT = GLContext.getFunctionAddress("glVertexAttribI4uiEXT")) != 0 &
(glVertexAttribI1ivEXT = GLContext.getFunctionAddress("glVertexAttribI1ivEXT")) != 0 &
(glVertexAttribI2ivEXT = GLContext.getFunctionAddress("glVertexAttribI2ivEXT")) != 0 &
(glVertexAttribI3ivEXT = GLContext.getFunctionAddress("glVertexAttribI3ivEXT")) != 0 &
(glVertexAttribI4ivEXT = GLContext.getFunctionAddress("glVertexAttribI4ivEXT")) != 0 &
(glVertexAttribI1uivEXT = GLContext.getFunctionAddress("glVertexAttribI1uivEXT")) != 0 &
(glVertexAttribI2uivEXT = GLContext.getFunctionAddress("glVertexAttribI2uivEXT")) != 0 &
(glVertexAttribI3uivEXT = GLContext.getFunctionAddress("glVertexAttribI3uivEXT")) != 0 &
(glVertexAttribI4uivEXT = GLContext.getFunctionAddress("glVertexAttribI4uivEXT")) != 0 &
(glVertexAttribI4bvEXT = GLContext.getFunctionAddress("glVertexAttribI4bvEXT")) != 0 &
(glVertexAttribI4svEXT = GLContext.getFunctionAddress("glVertexAttribI4svEXT")) != 0 &
(glVertexAttribI4ubvEXT = GLContext.getFunctionAddress("glVertexAttribI4ubvEXT")) != 0 &
(glVertexAttribI4usvEXT = GLContext.getFunctionAddress("glVertexAttribI4usvEXT")) != 0 &
(glVertexAttribIPointerEXT = GLContext.getFunctionAddress("glVertexAttribIPointerEXT")) != 0 &
(glGetVertexAttribIivEXT = GLContext.getFunctionAddress("glGetVertexAttribIivEXT")) != 0 &
(glGetVertexAttribIuivEXT = GLContext.getFunctionAddress("glGetVertexAttribIuivEXT")) != 0 &
(glUniform1uiEXT = GLContext.getFunctionAddress("glUniform1uiEXT")) != 0 &
(glUniform2uiEXT = GLContext.getFunctionAddress("glUniform2uiEXT")) != 0 &
(glUniform3uiEXT = GLContext.getFunctionAddress("glUniform3uiEXT")) != 0 &
(glUniform4uiEXT = GLContext.getFunctionAddress("glUniform4uiEXT")) != 0 &
(glUniform1uivEXT = GLContext.getFunctionAddress("glUniform1uivEXT")) != 0 &
(glUniform2uivEXT = GLContext.getFunctionAddress("glUniform2uivEXT")) != 0 &
(glUniform3uivEXT = GLContext.getFunctionAddress("glUniform3uivEXT")) != 0 &
(glUniform4uivEXT = GLContext.getFunctionAddress("glUniform4uivEXT")) != 0 &
(glGetUniformuivEXT = GLContext.getFunctionAddress("glGetUniformuivEXT")) != 0 &
(glBindFragDataLocationEXT = GLContext.getFunctionAddress("glBindFragDataLocationEXT")) != 0 &
(glGetFragDataLocationEXT = GLContext.getFunctionAddress("glGetFragDataLocationEXT")) != 0;
}
private boolean EXT_multi_draw_arrays_initNativeFunctionAddresses() {
return
(glMultiDrawArraysEXT = GLContext.getFunctionAddress("glMultiDrawArraysEXT")) != 0;
}
private boolean EXT_paletted_texture_initNativeFunctionAddresses() {
return
(glColorTableEXT = GLContext.getFunctionAddress("glColorTableEXT")) != 0 &
(glColorSubTableEXT = GLContext.getFunctionAddress("glColorSubTableEXT")) != 0 &
(glGetColorTableEXT = GLContext.getFunctionAddress("glGetColorTableEXT")) != 0 &
(glGetColorTableParameterivEXT = GLContext.getFunctionAddress("glGetColorTableParameterivEXT")) != 0 &
(glGetColorTableParameterfvEXT = GLContext.getFunctionAddress("glGetColorTableParameterfvEXT")) != 0;
}
private boolean EXT_point_parameters_initNativeFunctionAddresses() {
return
(glPointParameterfEXT = GLContext.getFunctionAddress("glPointParameterfEXT")) != 0 &
(glPointParameterfvEXT = GLContext.getFunctionAddress("glPointParameterfvEXT")) != 0;
}
private boolean EXT_provoking_vertex_initNativeFunctionAddresses() {
return
(glProvokingVertexEXT = GLContext.getFunctionAddress("glProvokingVertexEXT")) != 0;
}
private boolean EXT_secondary_color_initNativeFunctionAddresses() {
return
(glSecondaryColor3bEXT = GLContext.getFunctionAddress("glSecondaryColor3bEXT")) != 0 &
(glSecondaryColor3fEXT = GLContext.getFunctionAddress("glSecondaryColor3fEXT")) != 0 &
(glSecondaryColor3dEXT = GLContext.getFunctionAddress("glSecondaryColor3dEXT")) != 0 &
(glSecondaryColor3ubEXT = GLContext.getFunctionAddress("glSecondaryColor3ubEXT")) != 0 &
(glSecondaryColorPointerEXT = GLContext.getFunctionAddress("glSecondaryColorPointerEXT")) != 0;
}
private boolean EXT_separate_shader_objects_initNativeFunctionAddresses() {
return
(glUseShaderProgramEXT = GLContext.getFunctionAddress("glUseShaderProgramEXT")) != 0 &
(glActiveProgramEXT = GLContext.getFunctionAddress("glActiveProgramEXT")) != 0 &
(glCreateShaderProgramEXT = GLContext.getFunctionAddress("glCreateShaderProgramEXT")) != 0;
}
private boolean EXT_shader_image_load_store_initNativeFunctionAddresses() {
return
(glBindImageTextureEXT = GLContext.getFunctionAddress("glBindImageTextureEXT")) != 0 &
(glMemoryBarrierEXT = GLContext.getFunctionAddress("glMemoryBarrierEXT")) != 0;
}
private boolean EXT_stencil_clear_tag_initNativeFunctionAddresses() {
return
(glStencilClearTagEXT = GLContext.getFunctionAddress("glStencilClearTagEXT")) != 0;
}
private boolean EXT_stencil_two_side_initNativeFunctionAddresses() {
return
(glActiveStencilFaceEXT = GLContext.getFunctionAddress("glActiveStencilFaceEXT")) != 0;
}
private boolean EXT_texture_array_initNativeFunctionAddresses() {
return
(glFramebufferTextureLayerEXT = GLContext.getFunctionAddress("glFramebufferTextureLayerEXT")) != 0;
}
private boolean EXT_texture_buffer_object_initNativeFunctionAddresses() {
return
(glTexBufferEXT = GLContext.getFunctionAddress("glTexBufferEXT")) != 0;
}
private boolean EXT_texture_integer_initNativeFunctionAddresses() {
return
(glClearColorIiEXT = GLContext.getFunctionAddress("glClearColorIiEXT")) != 0 &
(glClearColorIuiEXT = GLContext.getFunctionAddress("glClearColorIuiEXT")) != 0 &
(glTexParameterIivEXT = GLContext.getFunctionAddress("glTexParameterIivEXT")) != 0 &
(glTexParameterIuivEXT = GLContext.getFunctionAddress("glTexParameterIuivEXT")) != 0 &
(glGetTexParameterIivEXT = GLContext.getFunctionAddress("glGetTexParameterIivEXT")) != 0 &
(glGetTexParameterIuivEXT = GLContext.getFunctionAddress("glGetTexParameterIuivEXT")) != 0;
}
private boolean EXT_timer_query_initNativeFunctionAddresses() {
return
(glGetQueryObjecti64vEXT = GLContext.getFunctionAddress("glGetQueryObjecti64vEXT")) != 0 &
(glGetQueryObjectui64vEXT = GLContext.getFunctionAddress("glGetQueryObjectui64vEXT")) != 0;
}
private boolean EXT_transform_feedback_initNativeFunctionAddresses() {
return
(glBindBufferRangeEXT = GLContext.getFunctionAddress("glBindBufferRangeEXT")) != 0 &
(glBindBufferOffsetEXT = GLContext.getFunctionAddress("glBindBufferOffsetEXT")) != 0 &
(glBindBufferBaseEXT = GLContext.getFunctionAddress("glBindBufferBaseEXT")) != 0 &
(glBeginTransformFeedbackEXT = GLContext.getFunctionAddress("glBeginTransformFeedbackEXT")) != 0 &
(glEndTransformFeedbackEXT = GLContext.getFunctionAddress("glEndTransformFeedbackEXT")) != 0 &
(glTransformFeedbackVaryingsEXT = GLContext.getFunctionAddress("glTransformFeedbackVaryingsEXT")) != 0 &
(glGetTransformFeedbackVaryingEXT = GLContext.getFunctionAddress("glGetTransformFeedbackVaryingEXT")) != 0;
}
private boolean EXT_vertex_attrib_64bit_initNativeFunctionAddresses(Set<String> supported_extensions) {
return
(glVertexAttribL1dEXT = GLContext.getFunctionAddress("glVertexAttribL1dEXT")) != 0 &
(glVertexAttribL2dEXT = GLContext.getFunctionAddress("glVertexAttribL2dEXT")) != 0 &
(glVertexAttribL3dEXT = GLContext.getFunctionAddress("glVertexAttribL3dEXT")) != 0 &
(glVertexAttribL4dEXT = GLContext.getFunctionAddress("glVertexAttribL4dEXT")) != 0 &
(glVertexAttribL1dvEXT = GLContext.getFunctionAddress("glVertexAttribL1dvEXT")) != 0 &
(glVertexAttribL2dvEXT = GLContext.getFunctionAddress("glVertexAttribL2dvEXT")) != 0 &
(glVertexAttribL3dvEXT = GLContext.getFunctionAddress("glVertexAttribL3dvEXT")) != 0 &
(glVertexAttribL4dvEXT = GLContext.getFunctionAddress("glVertexAttribL4dvEXT")) != 0 &
(glVertexAttribLPointerEXT = GLContext.getFunctionAddress("glVertexAttribLPointerEXT")) != 0 &
(glGetVertexAttribLdvEXT = GLContext.getFunctionAddress("glGetVertexAttribLdvEXT")) != 0 &
(!supported_extensions.contains("EXT_direct_state_access") || (glVertexArrayVertexAttribLOffsetEXT = GLContext.getFunctionAddress("glVertexArrayVertexAttribLOffsetEXT")) != 0);
}
private boolean EXT_vertex_shader_initNativeFunctionAddresses() {
return
(glBeginVertexShaderEXT = GLContext.getFunctionAddress("glBeginVertexShaderEXT")) != 0 &
(glEndVertexShaderEXT = GLContext.getFunctionAddress("glEndVertexShaderEXT")) != 0 &
(glBindVertexShaderEXT = GLContext.getFunctionAddress("glBindVertexShaderEXT")) != 0 &
(glGenVertexShadersEXT = GLContext.getFunctionAddress("glGenVertexShadersEXT")) != 0 &
(glDeleteVertexShaderEXT = GLContext.getFunctionAddress("glDeleteVertexShaderEXT")) != 0 &
(glShaderOp1EXT = GLContext.getFunctionAddress("glShaderOp1EXT")) != 0 &
(glShaderOp2EXT = GLContext.getFunctionAddress("glShaderOp2EXT")) != 0 &
(glShaderOp3EXT = GLContext.getFunctionAddress("glShaderOp3EXT")) != 0 &
(glSwizzleEXT = GLContext.getFunctionAddress("glSwizzleEXT")) != 0 &
(glWriteMaskEXT = GLContext.getFunctionAddress("glWriteMaskEXT")) != 0 &
(glInsertComponentEXT = GLContext.getFunctionAddress("glInsertComponentEXT")) != 0 &
(glExtractComponentEXT = GLContext.getFunctionAddress("glExtractComponentEXT")) != 0 &
(glGenSymbolsEXT = GLContext.getFunctionAddress("glGenSymbolsEXT")) != 0 &
(glSetInvariantEXT = GLContext.getFunctionAddress("glSetInvariantEXT")) != 0 &
(glSetLocalConstantEXT = GLContext.getFunctionAddress("glSetLocalConstantEXT")) != 0 &
(glVariantbvEXT = GLContext.getFunctionAddress("glVariantbvEXT")) != 0 &
(glVariantsvEXT = GLContext.getFunctionAddress("glVariantsvEXT")) != 0 &
(glVariantivEXT = GLContext.getFunctionAddress("glVariantivEXT")) != 0 &
(glVariantfvEXT = GLContext.getFunctionAddress("glVariantfvEXT")) != 0 &
(glVariantdvEXT = GLContext.getFunctionAddress("glVariantdvEXT")) != 0 &
(glVariantubvEXT = GLContext.getFunctionAddress("glVariantubvEXT")) != 0 &
(glVariantusvEXT = GLContext.getFunctionAddress("glVariantusvEXT")) != 0 &
(glVariantuivEXT = GLContext.getFunctionAddress("glVariantuivEXT")) != 0 &
(glVariantPointerEXT = GLContext.getFunctionAddress("glVariantPointerEXT")) != 0 &
(glEnableVariantClientStateEXT = GLContext.getFunctionAddress("glEnableVariantClientStateEXT")) != 0 &
(glDisableVariantClientStateEXT = GLContext.getFunctionAddress("glDisableVariantClientStateEXT")) != 0 &
(glBindLightParameterEXT = GLContext.getFunctionAddress("glBindLightParameterEXT")) != 0 &
(glBindMaterialParameterEXT = GLContext.getFunctionAddress("glBindMaterialParameterEXT")) != 0 &
(glBindTexGenParameterEXT = GLContext.getFunctionAddress("glBindTexGenParameterEXT")) != 0 &
(glBindTextureUnitParameterEXT = GLContext.getFunctionAddress("glBindTextureUnitParameterEXT")) != 0 &
(glBindParameterEXT = GLContext.getFunctionAddress("glBindParameterEXT")) != 0 &
(glIsVariantEnabledEXT = GLContext.getFunctionAddress("glIsVariantEnabledEXT")) != 0 &
(glGetVariantBooleanvEXT = GLContext.getFunctionAddress("glGetVariantBooleanvEXT")) != 0 &
(glGetVariantIntegervEXT = GLContext.getFunctionAddress("glGetVariantIntegervEXT")) != 0 &
(glGetVariantFloatvEXT = GLContext.getFunctionAddress("glGetVariantFloatvEXT")) != 0 &
(glGetVariantPointervEXT = GLContext.getFunctionAddress("glGetVariantPointervEXT")) != 0 &
(glGetInvariantBooleanvEXT = GLContext.getFunctionAddress("glGetInvariantBooleanvEXT")) != 0 &
(glGetInvariantIntegervEXT = GLContext.getFunctionAddress("glGetInvariantIntegervEXT")) != 0 &
(glGetInvariantFloatvEXT = GLContext.getFunctionAddress("glGetInvariantFloatvEXT")) != 0 &
(glGetLocalConstantBooleanvEXT = GLContext.getFunctionAddress("glGetLocalConstantBooleanvEXT")) != 0 &
(glGetLocalConstantIntegervEXT = GLContext.getFunctionAddress("glGetLocalConstantIntegervEXT")) != 0 &
(glGetLocalConstantFloatvEXT = GLContext.getFunctionAddress("glGetLocalConstantFloatvEXT")) != 0;
}
private boolean EXT_vertex_weighting_initNativeFunctionAddresses() {
return
(glVertexWeightfEXT = GLContext.getFunctionAddress("glVertexWeightfEXT")) != 0 &
(glVertexWeightPointerEXT = GLContext.getFunctionAddress("glVertexWeightPointerEXT")) != 0;
}
private boolean GL11_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(forwardCompatible || (glAccum = GLContext.getFunctionAddress("glAccum")) != 0) &
(forwardCompatible || (glAlphaFunc = GLContext.getFunctionAddress("glAlphaFunc")) != 0) &
(glClearColor = GLContext.getFunctionAddress("glClearColor")) != 0 &
(forwardCompatible || (glClearAccum = GLContext.getFunctionAddress("glClearAccum")) != 0) &
(glClear = GLContext.getFunctionAddress("glClear")) != 0 &
(forwardCompatible || (glCallLists = GLContext.getFunctionAddress("glCallLists")) != 0) &
(forwardCompatible || (glCallList = GLContext.getFunctionAddress("glCallList")) != 0) &
(glBlendFunc = GLContext.getFunctionAddress("glBlendFunc")) != 0 &
(forwardCompatible || (glBitmap = GLContext.getFunctionAddress("glBitmap")) != 0) &
(glBindTexture = GLContext.getFunctionAddress("glBindTexture")) != 0 &
(forwardCompatible || (glPrioritizeTextures = GLContext.getFunctionAddress("glPrioritizeTextures")) != 0) &
(forwardCompatible || (glAreTexturesResident = GLContext.getFunctionAddress("glAreTexturesResident")) != 0) &
(forwardCompatible || (glBegin = GLContext.getFunctionAddress("glBegin")) != 0) &
(forwardCompatible || (glEnd = GLContext.getFunctionAddress("glEnd")) != 0) &
(glArrayElement = GLContext.getFunctionAddress("glArrayElement")) != 0 &
(glClearDepth = GLContext.getFunctionAddress("glClearDepth")) != 0 &
(forwardCompatible || (glDeleteLists = GLContext.getFunctionAddress("glDeleteLists")) != 0) &
(glDeleteTextures = GLContext.getFunctionAddress("glDeleteTextures")) != 0 &
(glCullFace = GLContext.getFunctionAddress("glCullFace")) != 0 &
(glCopyTexSubImage2D = GLContext.getFunctionAddress("glCopyTexSubImage2D")) != 0 &
(glCopyTexSubImage1D = GLContext.getFunctionAddress("glCopyTexSubImage1D")) != 0 &
(glCopyTexImage2D = GLContext.getFunctionAddress("glCopyTexImage2D")) != 0 &
(glCopyTexImage1D = GLContext.getFunctionAddress("glCopyTexImage1D")) != 0 &
(glCopyPixels = GLContext.getFunctionAddress("glCopyPixels")) != 0 &
(forwardCompatible || (glColorPointer = GLContext.getFunctionAddress("glColorPointer")) != 0) &
(forwardCompatible || (glColorMaterial = GLContext.getFunctionAddress("glColorMaterial")) != 0) &
(glColorMask = GLContext.getFunctionAddress("glColorMask")) != 0 &
(forwardCompatible || (glColor3b = GLContext.getFunctionAddress("glColor3b")) != 0) &
(forwardCompatible || (glColor3f = GLContext.getFunctionAddress("glColor3f")) != 0) &
(forwardCompatible || (glColor3d = GLContext.getFunctionAddress("glColor3d")) != 0) &
(forwardCompatible || (glColor3ub = GLContext.getFunctionAddress("glColor3ub")) != 0) &
(forwardCompatible || (glColor4b = GLContext.getFunctionAddress("glColor4b")) != 0) &
(forwardCompatible || (glColor4f = GLContext.getFunctionAddress("glColor4f")) != 0) &
(forwardCompatible || (glColor4d = GLContext.getFunctionAddress("glColor4d")) != 0) &
(forwardCompatible || (glColor4ub = GLContext.getFunctionAddress("glColor4ub")) != 0) &
(glClipPlane = GLContext.getFunctionAddress("glClipPlane")) != 0 &
(glClearStencil = GLContext.getFunctionAddress("glClearStencil")) != 0 &
(forwardCompatible || (glEvalPoint1 = GLContext.getFunctionAddress("glEvalPoint1")) != 0) &
(forwardCompatible || (glEvalPoint2 = GLContext.getFunctionAddress("glEvalPoint2")) != 0) &
(forwardCompatible || (glEvalMesh1 = GLContext.getFunctionAddress("glEvalMesh1")) != 0) &
(forwardCompatible || (glEvalMesh2 = GLContext.getFunctionAddress("glEvalMesh2")) != 0) &
(forwardCompatible || (glEvalCoord1f = GLContext.getFunctionAddress("glEvalCoord1f")) != 0) &
(forwardCompatible || (glEvalCoord1d = GLContext.getFunctionAddress("glEvalCoord1d")) != 0) &
(forwardCompatible || (glEvalCoord2f = GLContext.getFunctionAddress("glEvalCoord2f")) != 0) &
(forwardCompatible || (glEvalCoord2d = GLContext.getFunctionAddress("glEvalCoord2d")) != 0) &
(forwardCompatible || (glEnableClientState = GLContext.getFunctionAddress("glEnableClientState")) != 0) &
(forwardCompatible || (glDisableClientState = GLContext.getFunctionAddress("glDisableClientState")) != 0) &
(glEnable = GLContext.getFunctionAddress("glEnable")) != 0 &
(glDisable = GLContext.getFunctionAddress("glDisable")) != 0 &
(forwardCompatible || (glEdgeFlagPointer = GLContext.getFunctionAddress("glEdgeFlagPointer")) != 0) &
(forwardCompatible || (glEdgeFlag = GLContext.getFunctionAddress("glEdgeFlag")) != 0) &
(forwardCompatible || (glDrawPixels = GLContext.getFunctionAddress("glDrawPixels")) != 0) &
(glDrawElements = GLContext.getFunctionAddress("glDrawElements")) != 0 &
(glDrawBuffer = GLContext.getFunctionAddress("glDrawBuffer")) != 0 &
(glDrawArrays = GLContext.getFunctionAddress("glDrawArrays")) != 0 &
(glDepthRange = GLContext.getFunctionAddress("glDepthRange")) != 0 &
(glDepthMask = GLContext.getFunctionAddress("glDepthMask")) != 0 &
(glDepthFunc = GLContext.getFunctionAddress("glDepthFunc")) != 0 &
(forwardCompatible || (glFeedbackBuffer = GLContext.getFunctionAddress("glFeedbackBuffer")) != 0) &
(forwardCompatible || (glGetPixelMapfv = GLContext.getFunctionAddress("glGetPixelMapfv")) != 0) &
(forwardCompatible || (glGetPixelMapuiv = GLContext.getFunctionAddress("glGetPixelMapuiv")) != 0) &
(forwardCompatible || (glGetPixelMapusv = GLContext.getFunctionAddress("glGetPixelMapusv")) != 0) &
(forwardCompatible || (glGetMaterialfv = GLContext.getFunctionAddress("glGetMaterialfv")) != 0) &
(forwardCompatible || (glGetMaterialiv = GLContext.getFunctionAddress("glGetMaterialiv")) != 0) &
(forwardCompatible || (glGetMapfv = GLContext.getFunctionAddress("glGetMapfv")) != 0) &
(forwardCompatible || (glGetMapdv = GLContext.getFunctionAddress("glGetMapdv")) != 0) &
(forwardCompatible || (glGetMapiv = GLContext.getFunctionAddress("glGetMapiv")) != 0) &
(forwardCompatible || (glGetLightfv = GLContext.getFunctionAddress("glGetLightfv")) != 0) &
(forwardCompatible || (glGetLightiv = GLContext.getFunctionAddress("glGetLightiv")) != 0) &
(glGetError = GLContext.getFunctionAddress("glGetError")) != 0 &
(glGetClipPlane = GLContext.getFunctionAddress("glGetClipPlane")) != 0 &
(glGetBooleanv = GLContext.getFunctionAddress("glGetBooleanv")) != 0 &
(glGetDoublev = GLContext.getFunctionAddress("glGetDoublev")) != 0 &
(glGetFloatv = GLContext.getFunctionAddress("glGetFloatv")) != 0 &
(glGetIntegerv = GLContext.getFunctionAddress("glGetIntegerv")) != 0 &
(glGenTextures = GLContext.getFunctionAddress("glGenTextures")) != 0 &
(forwardCompatible || (glGenLists = GLContext.getFunctionAddress("glGenLists")) != 0) &
(forwardCompatible || (glFrustum = GLContext.getFunctionAddress("glFrustum")) != 0) &
(glFrontFace = GLContext.getFunctionAddress("glFrontFace")) != 0 &
(forwardCompatible || (glFogf = GLContext.getFunctionAddress("glFogf")) != 0) &
(forwardCompatible || (glFogi = GLContext.getFunctionAddress("glFogi")) != 0) &
(forwardCompatible || (glFogfv = GLContext.getFunctionAddress("glFogfv")) != 0) &
(forwardCompatible || (glFogiv = GLContext.getFunctionAddress("glFogiv")) != 0) &
(glFlush = GLContext.getFunctionAddress("glFlush")) != 0 &
(glFinish = GLContext.getFunctionAddress("glFinish")) != 0 &
(glGetPointerv = GLContext.getFunctionAddress("glGetPointerv")) != 0 &
(glIsEnabled = GLContext.getFunctionAddress("glIsEnabled")) != 0 &
(glInterleavedArrays = GLContext.getFunctionAddress("glInterleavedArrays")) != 0 &
(forwardCompatible || (glInitNames = GLContext.getFunctionAddress("glInitNames")) != 0) &
(glHint = GLContext.getFunctionAddress("glHint")) != 0 &
(glGetTexParameterfv = GLContext.getFunctionAddress("glGetTexParameterfv")) != 0 &
(glGetTexParameteriv = GLContext.getFunctionAddress("glGetTexParameteriv")) != 0 &
(glGetTexLevelParameterfv = GLContext.getFunctionAddress("glGetTexLevelParameterfv")) != 0 &
(glGetTexLevelParameteriv = GLContext.getFunctionAddress("glGetTexLevelParameteriv")) != 0 &
(glGetTexImage = GLContext.getFunctionAddress("glGetTexImage")) != 0 &
(forwardCompatible || (glGetTexGeniv = GLContext.getFunctionAddress("glGetTexGeniv")) != 0) &
(forwardCompatible || (glGetTexGenfv = GLContext.getFunctionAddress("glGetTexGenfv")) != 0) &
(forwardCompatible || (glGetTexGendv = GLContext.getFunctionAddress("glGetTexGendv")) != 0) &
(glGetTexEnviv = GLContext.getFunctionAddress("glGetTexEnviv")) != 0 &
(glGetTexEnvfv = GLContext.getFunctionAddress("glGetTexEnvfv")) != 0 &
(glGetString = GLContext.getFunctionAddress("glGetString")) != 0 &
(forwardCompatible || (glGetPolygonStipple = GLContext.getFunctionAddress("glGetPolygonStipple")) != 0) &
(forwardCompatible || (glIsList = GLContext.getFunctionAddress("glIsList")) != 0) &
(forwardCompatible || (glMaterialf = GLContext.getFunctionAddress("glMaterialf")) != 0) &
(forwardCompatible || (glMateriali = GLContext.getFunctionAddress("glMateriali")) != 0) &
(forwardCompatible || (glMaterialfv = GLContext.getFunctionAddress("glMaterialfv")) != 0) &
(forwardCompatible || (glMaterialiv = GLContext.getFunctionAddress("glMaterialiv")) != 0) &
(forwardCompatible || (glMapGrid1f = GLContext.getFunctionAddress("glMapGrid1f")) != 0) &
(forwardCompatible || (glMapGrid1d = GLContext.getFunctionAddress("glMapGrid1d")) != 0) &
(forwardCompatible || (glMapGrid2f = GLContext.getFunctionAddress("glMapGrid2f")) != 0) &
(forwardCompatible || (glMapGrid2d = GLContext.getFunctionAddress("glMapGrid2d")) != 0) &
(forwardCompatible || (glMap2f = GLContext.getFunctionAddress("glMap2f")) != 0) &
(forwardCompatible || (glMap2d = GLContext.getFunctionAddress("glMap2d")) != 0) &
(forwardCompatible || (glMap1f = GLContext.getFunctionAddress("glMap1f")) != 0) &
(forwardCompatible || (glMap1d = GLContext.getFunctionAddress("glMap1d")) != 0) &
(glLogicOp = GLContext.getFunctionAddress("glLogicOp")) != 0 &
(forwardCompatible || (glLoadName = GLContext.getFunctionAddress("glLoadName")) != 0) &
(forwardCompatible || (glLoadMatrixf = GLContext.getFunctionAddress("glLoadMatrixf")) != 0) &
(forwardCompatible || (glLoadMatrixd = GLContext.getFunctionAddress("glLoadMatrixd")) != 0) &
(forwardCompatible || (glLoadIdentity = GLContext.getFunctionAddress("glLoadIdentity")) != 0) &
(forwardCompatible || (glListBase = GLContext.getFunctionAddress("glListBase")) != 0) &
(glLineWidth = GLContext.getFunctionAddress("glLineWidth")) != 0 &
(forwardCompatible || (glLineStipple = GLContext.getFunctionAddress("glLineStipple")) != 0) &
(forwardCompatible || (glLightModelf = GLContext.getFunctionAddress("glLightModelf")) != 0) &
(forwardCompatible || (glLightModeli = GLContext.getFunctionAddress("glLightModeli")) != 0) &
(forwardCompatible || (glLightModelfv = GLContext.getFunctionAddress("glLightModelfv")) != 0) &
(forwardCompatible || (glLightModeliv = GLContext.getFunctionAddress("glLightModeliv")) != 0) &
(forwardCompatible || (glLightf = GLContext.getFunctionAddress("glLightf")) != 0) &
(forwardCompatible || (glLighti = GLContext.getFunctionAddress("glLighti")) != 0) &
(forwardCompatible || (glLightfv = GLContext.getFunctionAddress("glLightfv")) != 0) &
(forwardCompatible || (glLightiv = GLContext.getFunctionAddress("glLightiv")) != 0) &
(glIsTexture = GLContext.getFunctionAddress("glIsTexture")) != 0 &
(forwardCompatible || (glMatrixMode = GLContext.getFunctionAddress("glMatrixMode")) != 0) &
(forwardCompatible || (glPolygonStipple = GLContext.getFunctionAddress("glPolygonStipple")) != 0) &
(glPolygonOffset = GLContext.getFunctionAddress("glPolygonOffset")) != 0 &
(glPolygonMode = GLContext.getFunctionAddress("glPolygonMode")) != 0 &
(glPointSize = GLContext.getFunctionAddress("glPointSize")) != 0 &
(forwardCompatible || (glPixelZoom = GLContext.getFunctionAddress("glPixelZoom")) != 0) &
(forwardCompatible || (glPixelTransferf = GLContext.getFunctionAddress("glPixelTransferf")) != 0) &
(forwardCompatible || (glPixelTransferi = GLContext.getFunctionAddress("glPixelTransferi")) != 0) &
(glPixelStoref = GLContext.getFunctionAddress("glPixelStoref")) != 0 &
(glPixelStorei = GLContext.getFunctionAddress("glPixelStorei")) != 0 &
(forwardCompatible || (glPixelMapfv = GLContext.getFunctionAddress("glPixelMapfv")) != 0) &
(forwardCompatible || (glPixelMapuiv = GLContext.getFunctionAddress("glPixelMapuiv")) != 0) &
(forwardCompatible || (glPixelMapusv = GLContext.getFunctionAddress("glPixelMapusv")) != 0) &
(forwardCompatible || (glPassThrough = GLContext.getFunctionAddress("glPassThrough")) != 0) &
(forwardCompatible || (glOrtho = GLContext.getFunctionAddress("glOrtho")) != 0) &
(forwardCompatible || (glNormalPointer = GLContext.getFunctionAddress("glNormalPointer")) != 0) &
(forwardCompatible || (glNormal3b = GLContext.getFunctionAddress("glNormal3b")) != 0) &
(forwardCompatible || (glNormal3f = GLContext.getFunctionAddress("glNormal3f")) != 0) &
(forwardCompatible || (glNormal3d = GLContext.getFunctionAddress("glNormal3d")) != 0) &
(forwardCompatible || (glNormal3i = GLContext.getFunctionAddress("glNormal3i")) != 0) &
(forwardCompatible || (glNewList = GLContext.getFunctionAddress("glNewList")) != 0) &
(forwardCompatible || (glEndList = GLContext.getFunctionAddress("glEndList")) != 0) &
(forwardCompatible || (glMultMatrixf = GLContext.getFunctionAddress("glMultMatrixf")) != 0) &
(forwardCompatible || (glMultMatrixd = GLContext.getFunctionAddress("glMultMatrixd")) != 0) &
(glShadeModel = GLContext.getFunctionAddress("glShadeModel")) != 0 &
(forwardCompatible || (glSelectBuffer = GLContext.getFunctionAddress("glSelectBuffer")) != 0) &
(glScissor = GLContext.getFunctionAddress("glScissor")) != 0 &
(forwardCompatible || (glScalef = GLContext.getFunctionAddress("glScalef")) != 0) &
(forwardCompatible || (glScaled = GLContext.getFunctionAddress("glScaled")) != 0) &
(forwardCompatible || (glRotatef = GLContext.getFunctionAddress("glRotatef")) != 0) &
(forwardCompatible || (glRenderMode = GLContext.getFunctionAddress("glRenderMode")) != 0) &
(forwardCompatible || (glRectf = GLContext.getFunctionAddress("glRectf")) != 0) &
(forwardCompatible || (glRectd = GLContext.getFunctionAddress("glRectd")) != 0) &
(forwardCompatible || (glRecti = GLContext.getFunctionAddress("glRecti")) != 0) &
(glReadPixels = GLContext.getFunctionAddress("glReadPixels")) != 0 &
(glReadBuffer = GLContext.getFunctionAddress("glReadBuffer")) != 0 &
(forwardCompatible || (glRasterPos2f = GLContext.getFunctionAddress("glRasterPos2f")) != 0) &
(forwardCompatible || (glRasterPos2d = GLContext.getFunctionAddress("glRasterPos2d")) != 0) &
(forwardCompatible || (glRasterPos2i = GLContext.getFunctionAddress("glRasterPos2i")) != 0) &
(forwardCompatible || (glRasterPos3f = GLContext.getFunctionAddress("glRasterPos3f")) != 0) &
(forwardCompatible || (glRasterPos3d = GLContext.getFunctionAddress("glRasterPos3d")) != 0) &
(forwardCompatible || (glRasterPos3i = GLContext.getFunctionAddress("glRasterPos3i")) != 0) &
(forwardCompatible || (glRasterPos4f = GLContext.getFunctionAddress("glRasterPos4f")) != 0) &
(forwardCompatible || (glRasterPos4d = GLContext.getFunctionAddress("glRasterPos4d")) != 0) &
(forwardCompatible || (glRasterPos4i = GLContext.getFunctionAddress("glRasterPos4i")) != 0) &
(forwardCompatible || (glPushName = GLContext.getFunctionAddress("glPushName")) != 0) &
(forwardCompatible || (glPopName = GLContext.getFunctionAddress("glPopName")) != 0) &
(forwardCompatible || (glPushMatrix = GLContext.getFunctionAddress("glPushMatrix")) != 0) &
(forwardCompatible || (glPopMatrix = GLContext.getFunctionAddress("glPopMatrix")) != 0) &
(forwardCompatible || (glPushClientAttrib = GLContext.getFunctionAddress("glPushClientAttrib")) != 0) &
(forwardCompatible || (glPopClientAttrib = GLContext.getFunctionAddress("glPopClientAttrib")) != 0) &
(forwardCompatible || (glPushAttrib = GLContext.getFunctionAddress("glPushAttrib")) != 0) &
(forwardCompatible || (glPopAttrib = GLContext.getFunctionAddress("glPopAttrib")) != 0) &
(glStencilFunc = GLContext.getFunctionAddress("glStencilFunc")) != 0 &
(forwardCompatible || (glVertexPointer = GLContext.getFunctionAddress("glVertexPointer")) != 0) &
(forwardCompatible || (glVertex2f = GLContext.getFunctionAddress("glVertex2f")) != 0) &
(forwardCompatible || (glVertex2d = GLContext.getFunctionAddress("glVertex2d")) != 0) &
(forwardCompatible || (glVertex2i = GLContext.getFunctionAddress("glVertex2i")) != 0) &
(forwardCompatible || (glVertex3f = GLContext.getFunctionAddress("glVertex3f")) != 0) &
(forwardCompatible || (glVertex3d = GLContext.getFunctionAddress("glVertex3d")) != 0) &
(forwardCompatible || (glVertex3i = GLContext.getFunctionAddress("glVertex3i")) != 0) &
(forwardCompatible || (glVertex4f = GLContext.getFunctionAddress("glVertex4f")) != 0) &
(forwardCompatible || (glVertex4d = GLContext.getFunctionAddress("glVertex4d")) != 0) &
(forwardCompatible || (glVertex4i = GLContext.getFunctionAddress("glVertex4i")) != 0) &
(forwardCompatible || (glTranslatef = GLContext.getFunctionAddress("glTranslatef")) != 0) &
(forwardCompatible || (glTranslated = GLContext.getFunctionAddress("glTranslated")) != 0) &
(glTexImage1D = GLContext.getFunctionAddress("glTexImage1D")) != 0 &
(glTexImage2D = GLContext.getFunctionAddress("glTexImage2D")) != 0 &
(glTexSubImage1D = GLContext.getFunctionAddress("glTexSubImage1D")) != 0 &
(glTexSubImage2D = GLContext.getFunctionAddress("glTexSubImage2D")) != 0 &
(glTexParameterf = GLContext.getFunctionAddress("glTexParameterf")) != 0 &
(glTexParameteri = GLContext.getFunctionAddress("glTexParameteri")) != 0 &
(glTexParameterfv = GLContext.getFunctionAddress("glTexParameterfv")) != 0 &
(glTexParameteriv = GLContext.getFunctionAddress("glTexParameteriv")) != 0 &
(forwardCompatible || (glTexGenf = GLContext.getFunctionAddress("glTexGenf")) != 0) &
(forwardCompatible || (glTexGend = GLContext.getFunctionAddress("glTexGend")) != 0) &
(forwardCompatible || (glTexGenfv = GLContext.getFunctionAddress("glTexGenfv")) != 0) &
(forwardCompatible || (glTexGendv = GLContext.getFunctionAddress("glTexGendv")) != 0) &
(forwardCompatible || (glTexGeni = GLContext.getFunctionAddress("glTexGeni")) != 0) &
(forwardCompatible || (glTexGeniv = GLContext.getFunctionAddress("glTexGeniv")) != 0) &
(glTexEnvf = GLContext.getFunctionAddress("glTexEnvf")) != 0 &
(glTexEnvi = GLContext.getFunctionAddress("glTexEnvi")) != 0 &
(glTexEnvfv = GLContext.getFunctionAddress("glTexEnvfv")) != 0 &
(glTexEnviv = GLContext.getFunctionAddress("glTexEnviv")) != 0 &
(forwardCompatible || (glTexCoordPointer = GLContext.getFunctionAddress("glTexCoordPointer")) != 0) &
(forwardCompatible || (glTexCoord1f = GLContext.getFunctionAddress("glTexCoord1f")) != 0) &
(forwardCompatible || (glTexCoord1d = GLContext.getFunctionAddress("glTexCoord1d")) != 0) &
(forwardCompatible || (glTexCoord2f = GLContext.getFunctionAddress("glTexCoord2f")) != 0) &
(forwardCompatible || (glTexCoord2d = GLContext.getFunctionAddress("glTexCoord2d")) != 0) &
(forwardCompatible || (glTexCoord3f = GLContext.getFunctionAddress("glTexCoord3f")) != 0) &
(forwardCompatible || (glTexCoord3d = GLContext.getFunctionAddress("glTexCoord3d")) != 0) &
(forwardCompatible || (glTexCoord4f = GLContext.getFunctionAddress("glTexCoord4f")) != 0) &
(forwardCompatible || (glTexCoord4d = GLContext.getFunctionAddress("glTexCoord4d")) != 0) &
(glStencilOp = GLContext.getFunctionAddress("glStencilOp")) != 0 &
(glStencilMask = GLContext.getFunctionAddress("glStencilMask")) != 0 &
(glViewport = GLContext.getFunctionAddress("glViewport")) != 0;
}
private boolean GL12_initNativeFunctionAddresses() {
return
(glDrawRangeElements = GLContext.getFunctionAddress("glDrawRangeElements")) != 0 &
(glTexImage3D = GLContext.getFunctionAddress("glTexImage3D")) != 0 &
(glTexSubImage3D = GLContext.getFunctionAddress("glTexSubImage3D")) != 0 &
(glCopyTexSubImage3D = GLContext.getFunctionAddress("glCopyTexSubImage3D")) != 0;
}
private boolean GL13_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(glActiveTexture = GLContext.getFunctionAddress("glActiveTexture")) != 0 &
(forwardCompatible || (glClientActiveTexture = GLContext.getFunctionAddress("glClientActiveTexture")) != 0) &
(glCompressedTexImage1D = GLContext.getFunctionAddress("glCompressedTexImage1D")) != 0 &
(glCompressedTexImage2D = GLContext.getFunctionAddress("glCompressedTexImage2D")) != 0 &
(glCompressedTexImage3D = GLContext.getFunctionAddress("glCompressedTexImage3D")) != 0 &
(glCompressedTexSubImage1D = GLContext.getFunctionAddress("glCompressedTexSubImage1D")) != 0 &
(glCompressedTexSubImage2D = GLContext.getFunctionAddress("glCompressedTexSubImage2D")) != 0 &
(glCompressedTexSubImage3D = GLContext.getFunctionAddress("glCompressedTexSubImage3D")) != 0 &
(glGetCompressedTexImage = GLContext.getFunctionAddress("glGetCompressedTexImage")) != 0 &
(forwardCompatible || (glMultiTexCoord1f = GLContext.getFunctionAddress("glMultiTexCoord1f")) != 0) &
(forwardCompatible || (glMultiTexCoord1d = GLContext.getFunctionAddress("glMultiTexCoord1d")) != 0) &
(forwardCompatible || (glMultiTexCoord2f = GLContext.getFunctionAddress("glMultiTexCoord2f")) != 0) &
(forwardCompatible || (glMultiTexCoord2d = GLContext.getFunctionAddress("glMultiTexCoord2d")) != 0) &
(forwardCompatible || (glMultiTexCoord3f = GLContext.getFunctionAddress("glMultiTexCoord3f")) != 0) &
(forwardCompatible || (glMultiTexCoord3d = GLContext.getFunctionAddress("glMultiTexCoord3d")) != 0) &
(forwardCompatible || (glMultiTexCoord4f = GLContext.getFunctionAddress("glMultiTexCoord4f")) != 0) &
(forwardCompatible || (glMultiTexCoord4d = GLContext.getFunctionAddress("glMultiTexCoord4d")) != 0) &
(forwardCompatible || (glLoadTransposeMatrixf = GLContext.getFunctionAddress("glLoadTransposeMatrixf")) != 0) &
(forwardCompatible || (glLoadTransposeMatrixd = GLContext.getFunctionAddress("glLoadTransposeMatrixd")) != 0) &
(forwardCompatible || (glMultTransposeMatrixf = GLContext.getFunctionAddress("glMultTransposeMatrixf")) != 0) &
(forwardCompatible || (glMultTransposeMatrixd = GLContext.getFunctionAddress("glMultTransposeMatrixd")) != 0) &
(glSampleCoverage = GLContext.getFunctionAddress("glSampleCoverage")) != 0;
}
private boolean GL14_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(glBlendEquation = GLContext.getFunctionAddress("glBlendEquation")) != 0 &
(glBlendColor = GLContext.getFunctionAddress("glBlendColor")) != 0 &
(forwardCompatible || (glFogCoordf = GLContext.getFunctionAddress("glFogCoordf")) != 0) &
(forwardCompatible || (glFogCoordd = GLContext.getFunctionAddress("glFogCoordd")) != 0) &
(forwardCompatible || (glFogCoordPointer = GLContext.getFunctionAddress("glFogCoordPointer")) != 0) &
(glMultiDrawArrays = GLContext.getFunctionAddress("glMultiDrawArrays")) != 0 &
(glPointParameteri = GLContext.getFunctionAddress("glPointParameteri")) != 0 &
(glPointParameterf = GLContext.getFunctionAddress("glPointParameterf")) != 0 &
(glPointParameteriv = GLContext.getFunctionAddress("glPointParameteriv")) != 0 &
(glPointParameterfv = GLContext.getFunctionAddress("glPointParameterfv")) != 0 &
(forwardCompatible || (glSecondaryColor3b = GLContext.getFunctionAddress("glSecondaryColor3b")) != 0) &
(forwardCompatible || (glSecondaryColor3f = GLContext.getFunctionAddress("glSecondaryColor3f")) != 0) &
(forwardCompatible || (glSecondaryColor3d = GLContext.getFunctionAddress("glSecondaryColor3d")) != 0) &
(forwardCompatible || (glSecondaryColor3ub = GLContext.getFunctionAddress("glSecondaryColor3ub")) != 0) &
(forwardCompatible || (glSecondaryColorPointer = GLContext.getFunctionAddress("glSecondaryColorPointer")) != 0) &
(glBlendFuncSeparate = GLContext.getFunctionAddress("glBlendFuncSeparate")) != 0 &
(forwardCompatible || (glWindowPos2f = GLContext.getFunctionAddress("glWindowPos2f")) != 0) &
(forwardCompatible || (glWindowPos2d = GLContext.getFunctionAddress("glWindowPos2d")) != 0) &
(forwardCompatible || (glWindowPos2i = GLContext.getFunctionAddress("glWindowPos2i")) != 0) &
(forwardCompatible || (glWindowPos3f = GLContext.getFunctionAddress("glWindowPos3f")) != 0) &
(forwardCompatible || (glWindowPos3d = GLContext.getFunctionAddress("glWindowPos3d")) != 0) &
(forwardCompatible || (glWindowPos3i = GLContext.getFunctionAddress("glWindowPos3i")) != 0);
}
private boolean GL15_initNativeFunctionAddresses() {
return
(glBindBuffer = GLContext.getFunctionAddress("glBindBuffer")) != 0 &
(glDeleteBuffers = GLContext.getFunctionAddress("glDeleteBuffers")) != 0 &
(glGenBuffers = GLContext.getFunctionAddress("glGenBuffers")) != 0 &
(glIsBuffer = GLContext.getFunctionAddress("glIsBuffer")) != 0 &
(glBufferData = GLContext.getFunctionAddress("glBufferData")) != 0 &
(glBufferSubData = GLContext.getFunctionAddress("glBufferSubData")) != 0 &
(glGetBufferSubData = GLContext.getFunctionAddress("glGetBufferSubData")) != 0 &
(glMapBuffer = GLContext.getFunctionAddress("glMapBuffer")) != 0 &
(glUnmapBuffer = GLContext.getFunctionAddress("glUnmapBuffer")) != 0 &
(glGetBufferParameteriv = GLContext.getFunctionAddress("glGetBufferParameteriv")) != 0 &
(glGetBufferPointerv = GLContext.getFunctionAddress("glGetBufferPointerv")) != 0 &
(glGenQueries = GLContext.getFunctionAddress("glGenQueries")) != 0 &
(glDeleteQueries = GLContext.getFunctionAddress("glDeleteQueries")) != 0 &
(glIsQuery = GLContext.getFunctionAddress("glIsQuery")) != 0 &
(glBeginQuery = GLContext.getFunctionAddress("glBeginQuery")) != 0 &
(glEndQuery = GLContext.getFunctionAddress("glEndQuery")) != 0 &
(glGetQueryiv = GLContext.getFunctionAddress("glGetQueryiv")) != 0 &
(glGetQueryObjectiv = GLContext.getFunctionAddress("glGetQueryObjectiv")) != 0 &
(glGetQueryObjectuiv = GLContext.getFunctionAddress("glGetQueryObjectuiv")) != 0;
}
private boolean GL20_initNativeFunctionAddresses() {
return
(glShaderSource = GLContext.getFunctionAddress("glShaderSource")) != 0 &
(glCreateShader = GLContext.getFunctionAddress("glCreateShader")) != 0 &
(glIsShader = GLContext.getFunctionAddress("glIsShader")) != 0 &
(glCompileShader = GLContext.getFunctionAddress("glCompileShader")) != 0 &
(glDeleteShader = GLContext.getFunctionAddress("glDeleteShader")) != 0 &
(glCreateProgram = GLContext.getFunctionAddress("glCreateProgram")) != 0 &
(glIsProgram = GLContext.getFunctionAddress("glIsProgram")) != 0 &
(glAttachShader = GLContext.getFunctionAddress("glAttachShader")) != 0 &
(glDetachShader = GLContext.getFunctionAddress("glDetachShader")) != 0 &
(glLinkProgram = GLContext.getFunctionAddress("glLinkProgram")) != 0 &
(glUseProgram = GLContext.getFunctionAddress("glUseProgram")) != 0 &
(glValidateProgram = GLContext.getFunctionAddress("glValidateProgram")) != 0 &
(glDeleteProgram = GLContext.getFunctionAddress("glDeleteProgram")) != 0 &
(glUniform1f = GLContext.getFunctionAddress("glUniform1f")) != 0 &
(glUniform2f = GLContext.getFunctionAddress("glUniform2f")) != 0 &
(glUniform3f = GLContext.getFunctionAddress("glUniform3f")) != 0 &
(glUniform4f = GLContext.getFunctionAddress("glUniform4f")) != 0 &
(glUniform1i = GLContext.getFunctionAddress("glUniform1i")) != 0 &
(glUniform2i = GLContext.getFunctionAddress("glUniform2i")) != 0 &
(glUniform3i = GLContext.getFunctionAddress("glUniform3i")) != 0 &
(glUniform4i = GLContext.getFunctionAddress("glUniform4i")) != 0 &
(glUniform1fv = GLContext.getFunctionAddress("glUniform1fv")) != 0 &
(glUniform2fv = GLContext.getFunctionAddress("glUniform2fv")) != 0 &
(glUniform3fv = GLContext.getFunctionAddress("glUniform3fv")) != 0 &
(glUniform4fv = GLContext.getFunctionAddress("glUniform4fv")) != 0 &
(glUniform1iv = GLContext.getFunctionAddress("glUniform1iv")) != 0 &
(glUniform2iv = GLContext.getFunctionAddress("glUniform2iv")) != 0 &
(glUniform3iv = GLContext.getFunctionAddress("glUniform3iv")) != 0 &
(glUniform4iv = GLContext.getFunctionAddress("glUniform4iv")) != 0 &
(glUniformMatrix2fv = GLContext.getFunctionAddress("glUniformMatrix2fv")) != 0 &
(glUniformMatrix3fv = GLContext.getFunctionAddress("glUniformMatrix3fv")) != 0 &
(glUniformMatrix4fv = GLContext.getFunctionAddress("glUniformMatrix4fv")) != 0 &
(glGetShaderiv = GLContext.getFunctionAddress("glGetShaderiv")) != 0 &
(glGetProgramiv = GLContext.getFunctionAddress("glGetProgramiv")) != 0 &
(glGetShaderInfoLog = GLContext.getFunctionAddress("glGetShaderInfoLog")) != 0 &
(glGetProgramInfoLog = GLContext.getFunctionAddress("glGetProgramInfoLog")) != 0 &
(glGetAttachedShaders = GLContext.getFunctionAddress("glGetAttachedShaders")) != 0 &
(glGetUniformLocation = GLContext.getFunctionAddress("glGetUniformLocation")) != 0 &
(glGetActiveUniform = GLContext.getFunctionAddress("glGetActiveUniform")) != 0 &
(glGetUniformfv = GLContext.getFunctionAddress("glGetUniformfv")) != 0 &
(glGetUniformiv = GLContext.getFunctionAddress("glGetUniformiv")) != 0 &
(glGetShaderSource = GLContext.getFunctionAddress("glGetShaderSource")) != 0 &
(glVertexAttrib1s = GLContext.getFunctionAddress("glVertexAttrib1s")) != 0 &
(glVertexAttrib1f = GLContext.getFunctionAddress("glVertexAttrib1f")) != 0 &
(glVertexAttrib1d = GLContext.getFunctionAddress("glVertexAttrib1d")) != 0 &
(glVertexAttrib2s = GLContext.getFunctionAddress("glVertexAttrib2s")) != 0 &
(glVertexAttrib2f = GLContext.getFunctionAddress("glVertexAttrib2f")) != 0 &
(glVertexAttrib2d = GLContext.getFunctionAddress("glVertexAttrib2d")) != 0 &
(glVertexAttrib3s = GLContext.getFunctionAddress("glVertexAttrib3s")) != 0 &
(glVertexAttrib3f = GLContext.getFunctionAddress("glVertexAttrib3f")) != 0 &
(glVertexAttrib3d = GLContext.getFunctionAddress("glVertexAttrib3d")) != 0 &
(glVertexAttrib4s = GLContext.getFunctionAddress("glVertexAttrib4s")) != 0 &
(glVertexAttrib4f = GLContext.getFunctionAddress("glVertexAttrib4f")) != 0 &
(glVertexAttrib4d = GLContext.getFunctionAddress("glVertexAttrib4d")) != 0 &
(glVertexAttrib4Nub = GLContext.getFunctionAddress("glVertexAttrib4Nub")) != 0 &
(glVertexAttribPointer = GLContext.getFunctionAddress("glVertexAttribPointer")) != 0 &
(glEnableVertexAttribArray = GLContext.getFunctionAddress("glEnableVertexAttribArray")) != 0 &
(glDisableVertexAttribArray = GLContext.getFunctionAddress("glDisableVertexAttribArray")) != 0 &
(glGetVertexAttribfv = GLContext.getFunctionAddress("glGetVertexAttribfv")) != 0 &
(glGetVertexAttribdv = GLContext.getFunctionAddress("glGetVertexAttribdv")) != 0 &
(glGetVertexAttribiv = GLContext.getFunctionAddress("glGetVertexAttribiv")) != 0 &
(glGetVertexAttribPointerv = GLContext.getFunctionAddress("glGetVertexAttribPointerv")) != 0 &
(glBindAttribLocation = GLContext.getFunctionAddress("glBindAttribLocation")) != 0 &
(glGetActiveAttrib = GLContext.getFunctionAddress("glGetActiveAttrib")) != 0 &
(glGetAttribLocation = GLContext.getFunctionAddress("glGetAttribLocation")) != 0 &
(glDrawBuffers = GLContext.getFunctionAddress("glDrawBuffers")) != 0 &
(glStencilOpSeparate = GLContext.getFunctionAddress("glStencilOpSeparate")) != 0 &
(glStencilFuncSeparate = GLContext.getFunctionAddress("glStencilFuncSeparate")) != 0 &
(glStencilMaskSeparate = GLContext.getFunctionAddress("glStencilMaskSeparate")) != 0 &
(glBlendEquationSeparate = GLContext.getFunctionAddress("glBlendEquationSeparate")) != 0;
}
private boolean GL21_initNativeFunctionAddresses() {
return
(glUniformMatrix2x3fv = GLContext.getFunctionAddress("glUniformMatrix2x3fv")) != 0 &
(glUniformMatrix3x2fv = GLContext.getFunctionAddress("glUniformMatrix3x2fv")) != 0 &
(glUniformMatrix2x4fv = GLContext.getFunctionAddress("glUniformMatrix2x4fv")) != 0 &
(glUniformMatrix4x2fv = GLContext.getFunctionAddress("glUniformMatrix4x2fv")) != 0 &
(glUniformMatrix3x4fv = GLContext.getFunctionAddress("glUniformMatrix3x4fv")) != 0 &
(glUniformMatrix4x3fv = GLContext.getFunctionAddress("glUniformMatrix4x3fv")) != 0;
}
private boolean GL30_initNativeFunctionAddresses() {
return
(glGetStringi = GLContext.getFunctionAddress("glGetStringi")) != 0 &
(glClearBufferfv = GLContext.getFunctionAddress("glClearBufferfv")) != 0 &
(glClearBufferiv = GLContext.getFunctionAddress("glClearBufferiv")) != 0 &
(glClearBufferuiv = GLContext.getFunctionAddress("glClearBufferuiv")) != 0 &
(glClearBufferfi = GLContext.getFunctionAddress("glClearBufferfi")) != 0 &
(glVertexAttribI1i = GLContext.getFunctionAddress("glVertexAttribI1i")) != 0 &
(glVertexAttribI2i = GLContext.getFunctionAddress("glVertexAttribI2i")) != 0 &
(glVertexAttribI3i = GLContext.getFunctionAddress("glVertexAttribI3i")) != 0 &
(glVertexAttribI4i = GLContext.getFunctionAddress("glVertexAttribI4i")) != 0 &
(glVertexAttribI1ui = GLContext.getFunctionAddress("glVertexAttribI1ui")) != 0 &
(glVertexAttribI2ui = GLContext.getFunctionAddress("glVertexAttribI2ui")) != 0 &
(glVertexAttribI3ui = GLContext.getFunctionAddress("glVertexAttribI3ui")) != 0 &
(glVertexAttribI4ui = GLContext.getFunctionAddress("glVertexAttribI4ui")) != 0 &
(glVertexAttribI1iv = GLContext.getFunctionAddress("glVertexAttribI1iv")) != 0 &
(glVertexAttribI2iv = GLContext.getFunctionAddress("glVertexAttribI2iv")) != 0 &
(glVertexAttribI3iv = GLContext.getFunctionAddress("glVertexAttribI3iv")) != 0 &
(glVertexAttribI4iv = GLContext.getFunctionAddress("glVertexAttribI4iv")) != 0 &
(glVertexAttribI1uiv = GLContext.getFunctionAddress("glVertexAttribI1uiv")) != 0 &
(glVertexAttribI2uiv = GLContext.getFunctionAddress("glVertexAttribI2uiv")) != 0 &
(glVertexAttribI3uiv = GLContext.getFunctionAddress("glVertexAttribI3uiv")) != 0 &
(glVertexAttribI4uiv = GLContext.getFunctionAddress("glVertexAttribI4uiv")) != 0 &
(glVertexAttribI4bv = GLContext.getFunctionAddress("glVertexAttribI4bv")) != 0 &
(glVertexAttribI4sv = GLContext.getFunctionAddress("glVertexAttribI4sv")) != 0 &
(glVertexAttribI4ubv = GLContext.getFunctionAddress("glVertexAttribI4ubv")) != 0 &
(glVertexAttribI4usv = GLContext.getFunctionAddress("glVertexAttribI4usv")) != 0 &
(glVertexAttribIPointer = GLContext.getFunctionAddress("glVertexAttribIPointer")) != 0 &
(glGetVertexAttribIiv = GLContext.getFunctionAddress("glGetVertexAttribIiv")) != 0 &
(glGetVertexAttribIuiv = GLContext.getFunctionAddress("glGetVertexAttribIuiv")) != 0 &
(glUniform1ui = GLContext.getFunctionAddress("glUniform1ui")) != 0 &
(glUniform2ui = GLContext.getFunctionAddress("glUniform2ui")) != 0 &
(glUniform3ui = GLContext.getFunctionAddress("glUniform3ui")) != 0 &
(glUniform4ui = GLContext.getFunctionAddress("glUniform4ui")) != 0 &
(glUniform1uiv = GLContext.getFunctionAddress("glUniform1uiv")) != 0 &
(glUniform2uiv = GLContext.getFunctionAddress("glUniform2uiv")) != 0 &
(glUniform3uiv = GLContext.getFunctionAddress("glUniform3uiv")) != 0 &
(glUniform4uiv = GLContext.getFunctionAddress("glUniform4uiv")) != 0 &
(glGetUniformuiv = GLContext.getFunctionAddress("glGetUniformuiv")) != 0 &
(glBindFragDataLocation = GLContext.getFunctionAddress("glBindFragDataLocation")) != 0 &
(glGetFragDataLocation = GLContext.getFunctionAddress("glGetFragDataLocation")) != 0 &
(glBeginConditionalRender = GLContext.getFunctionAddress("glBeginConditionalRender")) != 0 &
(glEndConditionalRender = GLContext.getFunctionAddress("glEndConditionalRender")) != 0 &
(glMapBufferRange = GLContext.getFunctionAddress("glMapBufferRange")) != 0 &
(glFlushMappedBufferRange = GLContext.getFunctionAddress("glFlushMappedBufferRange")) != 0 &
(glClampColor = GLContext.getFunctionAddress("glClampColor")) != 0 &
(glIsRenderbuffer = GLContext.getFunctionAddress("glIsRenderbuffer")) != 0 &
(glBindRenderbuffer = GLContext.getFunctionAddress("glBindRenderbuffer")) != 0 &
(glDeleteRenderbuffers = GLContext.getFunctionAddress("glDeleteRenderbuffers")) != 0 &
(glGenRenderbuffers = GLContext.getFunctionAddress("glGenRenderbuffers")) != 0 &
(glRenderbufferStorage = GLContext.getFunctionAddress("glRenderbufferStorage")) != 0 &
(glGetRenderbufferParameteriv = GLContext.getFunctionAddress("glGetRenderbufferParameteriv")) != 0 &
(glIsFramebuffer = GLContext.getFunctionAddress("glIsFramebuffer")) != 0 &
(glBindFramebuffer = GLContext.getFunctionAddress("glBindFramebuffer")) != 0 &
(glDeleteFramebuffers = GLContext.getFunctionAddress("glDeleteFramebuffers")) != 0 &
(glGenFramebuffers = GLContext.getFunctionAddress("glGenFramebuffers")) != 0 &
(glCheckFramebufferStatus = GLContext.getFunctionAddress("glCheckFramebufferStatus")) != 0 &
(glFramebufferTexture1D = GLContext.getFunctionAddress("glFramebufferTexture1D")) != 0 &
(glFramebufferTexture2D = GLContext.getFunctionAddress("glFramebufferTexture2D")) != 0 &
(glFramebufferTexture3D = GLContext.getFunctionAddress("glFramebufferTexture3D")) != 0 &
(glFramebufferRenderbuffer = GLContext.getFunctionAddress("glFramebufferRenderbuffer")) != 0 &
(glGetFramebufferAttachmentParameteriv = GLContext.getFunctionAddress("glGetFramebufferAttachmentParameteriv")) != 0 &
(glGenerateMipmap = GLContext.getFunctionAddress("glGenerateMipmap")) != 0 &
(glRenderbufferStorageMultisample = GLContext.getFunctionAddress("glRenderbufferStorageMultisample")) != 0 &
(glBlitFramebuffer = GLContext.getFunctionAddress("glBlitFramebuffer")) != 0 &
(glTexParameterIiv = GLContext.getFunctionAddress("glTexParameterIiv")) != 0 &
(glTexParameterIuiv = GLContext.getFunctionAddress("glTexParameterIuiv")) != 0 &
(glGetTexParameterIiv = GLContext.getFunctionAddress("glGetTexParameterIiv")) != 0 &
(glGetTexParameterIuiv = GLContext.getFunctionAddress("glGetTexParameterIuiv")) != 0 &
(glFramebufferTextureLayer = GLContext.getFunctionAddress("glFramebufferTextureLayer")) != 0 &
(glColorMaski = GLContext.getFunctionAddress("glColorMaski")) != 0 &
(glGetBooleani_v = GLContext.getFunctionAddress("glGetBooleani_v")) != 0 &
(glGetIntegeri_v = GLContext.getFunctionAddress("glGetIntegeri_v")) != 0 &
(glEnablei = GLContext.getFunctionAddress("glEnablei")) != 0 &
(glDisablei = GLContext.getFunctionAddress("glDisablei")) != 0 &
(glIsEnabledi = GLContext.getFunctionAddress("glIsEnabledi")) != 0 &
(glBindBufferRange = GLContext.getFunctionAddress("glBindBufferRange")) != 0 &
(glBindBufferBase = GLContext.getFunctionAddress("glBindBufferBase")) != 0 &
(glBeginTransformFeedback = GLContext.getFunctionAddress("glBeginTransformFeedback")) != 0 &
(glEndTransformFeedback = GLContext.getFunctionAddress("glEndTransformFeedback")) != 0 &
(glTransformFeedbackVaryings = GLContext.getFunctionAddress("glTransformFeedbackVaryings")) != 0 &
(glGetTransformFeedbackVarying = GLContext.getFunctionAddress("glGetTransformFeedbackVarying")) != 0 &
(glBindVertexArray = GLContext.getFunctionAddress("glBindVertexArray")) != 0 &
(glDeleteVertexArrays = GLContext.getFunctionAddress("glDeleteVertexArrays")) != 0 &
(glGenVertexArrays = GLContext.getFunctionAddress("glGenVertexArrays")) != 0 &
(glIsVertexArray = GLContext.getFunctionAddress("glIsVertexArray")) != 0;
}
private boolean GL31_initNativeFunctionAddresses() {
return
(glDrawArraysInstanced = GLContext.getFunctionAddress("glDrawArraysInstanced")) != 0 &
(glDrawElementsInstanced = GLContext.getFunctionAddress("glDrawElementsInstanced")) != 0 &
(glCopyBufferSubData = GLContext.getFunctionAddress("glCopyBufferSubData")) != 0 &
(glPrimitiveRestartIndex = GLContext.getFunctionAddress("glPrimitiveRestartIndex")) != 0 &
(glTexBuffer = GLContext.getFunctionAddress("glTexBuffer")) != 0 &
(glGetUniformIndices = GLContext.getFunctionAddress("glGetUniformIndices")) != 0 &
(glGetActiveUniformsiv = GLContext.getFunctionAddress("glGetActiveUniformsiv")) != 0 &
(glGetActiveUniformName = GLContext.getFunctionAddress("glGetActiveUniformName")) != 0 &
(glGetUniformBlockIndex = GLContext.getFunctionAddress("glGetUniformBlockIndex")) != 0 &
(glGetActiveUniformBlockiv = GLContext.getFunctionAddress("glGetActiveUniformBlockiv")) != 0 &
(glGetActiveUniformBlockName = GLContext.getFunctionAddress("glGetActiveUniformBlockName")) != 0 &
(glUniformBlockBinding = GLContext.getFunctionAddress("glUniformBlockBinding")) != 0;
}
private boolean GL32_initNativeFunctionAddresses() {
return
(glDrawElementsBaseVertex = GLContext.getFunctionAddress("glDrawElementsBaseVertex")) != 0 &
(glDrawRangeElementsBaseVertex = GLContext.getFunctionAddress("glDrawRangeElementsBaseVertex")) != 0 &
(glDrawElementsInstancedBaseVertex = GLContext.getFunctionAddress("glDrawElementsInstancedBaseVertex")) != 0 &
(glProvokingVertex = GLContext.getFunctionAddress("glProvokingVertex")) != 0 &
(glTexImage2DMultisample = GLContext.getFunctionAddress("glTexImage2DMultisample")) != 0 &
(glTexImage3DMultisample = GLContext.getFunctionAddress("glTexImage3DMultisample")) != 0 &
(glGetMultisamplefv = GLContext.getFunctionAddress("glGetMultisamplefv")) != 0 &
(glSampleMaski = GLContext.getFunctionAddress("glSampleMaski")) != 0 &
(glFramebufferTexture = GLContext.getFunctionAddress("glFramebufferTexture")) != 0 &
(glFenceSync = GLContext.getFunctionAddress("glFenceSync")) != 0 &
(glIsSync = GLContext.getFunctionAddress("glIsSync")) != 0 &
(glDeleteSync = GLContext.getFunctionAddress("glDeleteSync")) != 0 &
(glClientWaitSync = GLContext.getFunctionAddress("glClientWaitSync")) != 0 &
(glWaitSync = GLContext.getFunctionAddress("glWaitSync")) != 0 &
(glGetInteger64v = GLContext.getFunctionAddress("glGetInteger64v")) != 0 &
((glGetInteger64i_v = GLContext.getFunctionAddress("glGetInteger64i_v")) != 0 || true) &
(glGetSynciv = GLContext.getFunctionAddress("glGetSynciv")) != 0;
}
private boolean GL33_initNativeFunctionAddresses(boolean forwardCompatible) {
return
(glBindFragDataLocationIndexed = GLContext.getFunctionAddress("glBindFragDataLocationIndexed")) != 0 &
(glGetFragDataIndex = GLContext.getFunctionAddress("glGetFragDataIndex")) != 0 &
(glGenSamplers = GLContext.getFunctionAddress("glGenSamplers")) != 0 &
(glDeleteSamplers = GLContext.getFunctionAddress("glDeleteSamplers")) != 0 &
(glIsSampler = GLContext.getFunctionAddress("glIsSampler")) != 0 &
(glBindSampler = GLContext.getFunctionAddress("glBindSampler")) != 0 &
(glSamplerParameteri = GLContext.getFunctionAddress("glSamplerParameteri")) != 0 &
(glSamplerParameterf = GLContext.getFunctionAddress("glSamplerParameterf")) != 0 &
(glSamplerParameteriv = GLContext.getFunctionAddress("glSamplerParameteriv")) != 0 &
(glSamplerParameterfv = GLContext.getFunctionAddress("glSamplerParameterfv")) != 0 &
(glSamplerParameterIiv = GLContext.getFunctionAddress("glSamplerParameterIiv")) != 0 &
(glSamplerParameterIuiv = GLContext.getFunctionAddress("glSamplerParameterIuiv")) != 0 &
(glGetSamplerParameteriv = GLContext.getFunctionAddress("glGetSamplerParameteriv")) != 0 &
(glGetSamplerParameterfv = GLContext.getFunctionAddress("glGetSamplerParameterfv")) != 0 &
(glGetSamplerParameterIiv = GLContext.getFunctionAddress("glGetSamplerParameterIiv")) != 0 &
(glGetSamplerParameterIuiv = GLContext.getFunctionAddress("glGetSamplerParameterIuiv")) != 0 &
(glQueryCounter = GLContext.getFunctionAddress("glQueryCounter")) != 0 &
(glGetQueryObjecti64v = GLContext.getFunctionAddress("glGetQueryObjecti64v")) != 0 &
(glGetQueryObjectui64v = GLContext.getFunctionAddress("glGetQueryObjectui64v")) != 0 &
(glVertexAttribDivisor = GLContext.getFunctionAddress("glVertexAttribDivisor")) != 0 &
(forwardCompatible || (glVertexP2ui = GLContext.getFunctionAddress("glVertexP2ui")) != 0) &
(forwardCompatible || (glVertexP3ui = GLContext.getFunctionAddress("glVertexP3ui")) != 0) &
(forwardCompatible || (glVertexP4ui = GLContext.getFunctionAddress("glVertexP4ui")) != 0) &
(forwardCompatible || (glVertexP2uiv = GLContext.getFunctionAddress("glVertexP2uiv")) != 0) &
(forwardCompatible || (glVertexP3uiv = GLContext.getFunctionAddress("glVertexP3uiv")) != 0) &
(forwardCompatible || (glVertexP4uiv = GLContext.getFunctionAddress("glVertexP4uiv")) != 0) &
(forwardCompatible || (glTexCoordP1ui = GLContext.getFunctionAddress("glTexCoordP1ui")) != 0) &
(forwardCompatible || (glTexCoordP2ui = GLContext.getFunctionAddress("glTexCoordP2ui")) != 0) &
(forwardCompatible || (glTexCoordP3ui = GLContext.getFunctionAddress("glTexCoordP3ui")) != 0) &
(forwardCompatible || (glTexCoordP4ui = GLContext.getFunctionAddress("glTexCoordP4ui")) != 0) &
(forwardCompatible || (glTexCoordP1uiv = GLContext.getFunctionAddress("glTexCoordP1uiv")) != 0) &
(forwardCompatible || (glTexCoordP2uiv = GLContext.getFunctionAddress("glTexCoordP2uiv")) != 0) &
(forwardCompatible || (glTexCoordP3uiv = GLContext.getFunctionAddress("glTexCoordP3uiv")) != 0) &
(forwardCompatible || (glTexCoordP4uiv = GLContext.getFunctionAddress("glTexCoordP4uiv")) != 0) &
(forwardCompatible || (glMultiTexCoordP1ui = GLContext.getFunctionAddress("glMultiTexCoordP1ui")) != 0) &
(forwardCompatible || (glMultiTexCoordP2ui = GLContext.getFunctionAddress("glMultiTexCoordP2ui")) != 0) &
(forwardCompatible || (glMultiTexCoordP3ui = GLContext.getFunctionAddress("glMultiTexCoordP3ui")) != 0) &
(forwardCompatible || (glMultiTexCoordP4ui = GLContext.getFunctionAddress("glMultiTexCoordP4ui")) != 0) &
(forwardCompatible || (glMultiTexCoordP1uiv = GLContext.getFunctionAddress("glMultiTexCoordP1uiv")) != 0) &
(forwardCompatible || (glMultiTexCoordP2uiv = GLContext.getFunctionAddress("glMultiTexCoordP2uiv")) != 0) &
(forwardCompatible || (glMultiTexCoordP3uiv = GLContext.getFunctionAddress("glMultiTexCoordP3uiv")) != 0) &
(forwardCompatible || (glMultiTexCoordP4uiv = GLContext.getFunctionAddress("glMultiTexCoordP4uiv")) != 0) &
(forwardCompatible || (glNormalP3ui = GLContext.getFunctionAddress("glNormalP3ui")) != 0) &
(forwardCompatible || (glNormalP3uiv = GLContext.getFunctionAddress("glNormalP3uiv")) != 0) &
(forwardCompatible || (glColorP3ui = GLContext.getFunctionAddress("glColorP3ui")) != 0) &
(forwardCompatible || (glColorP4ui = GLContext.getFunctionAddress("glColorP4ui")) != 0) &
(forwardCompatible || (glColorP3uiv = GLContext.getFunctionAddress("glColorP3uiv")) != 0) &
(forwardCompatible || (glColorP4uiv = GLContext.getFunctionAddress("glColorP4uiv")) != 0) &
(forwardCompatible || (glSecondaryColorP3ui = GLContext.getFunctionAddress("glSecondaryColorP3ui")) != 0) &
(forwardCompatible || (glSecondaryColorP3uiv = GLContext.getFunctionAddress("glSecondaryColorP3uiv")) != 0) &
(forwardCompatible || (glVertexAttribP1ui = GLContext.getFunctionAddress("glVertexAttribP1ui")) != 0) &
(forwardCompatible || (glVertexAttribP2ui = GLContext.getFunctionAddress("glVertexAttribP2ui")) != 0) &
(forwardCompatible || (glVertexAttribP3ui = GLContext.getFunctionAddress("glVertexAttribP3ui")) != 0) &
(forwardCompatible || (glVertexAttribP4ui = GLContext.getFunctionAddress("glVertexAttribP4ui")) != 0) &
(forwardCompatible || (glVertexAttribP1uiv = GLContext.getFunctionAddress("glVertexAttribP1uiv")) != 0) &
(forwardCompatible || (glVertexAttribP2uiv = GLContext.getFunctionAddress("glVertexAttribP2uiv")) != 0) &
(forwardCompatible || (glVertexAttribP3uiv = GLContext.getFunctionAddress("glVertexAttribP3uiv")) != 0) &
(forwardCompatible || (glVertexAttribP4uiv = GLContext.getFunctionAddress("glVertexAttribP4uiv")) != 0);
}
private boolean GL40_initNativeFunctionAddresses() {
return
(glBlendEquationi = GLContext.getFunctionAddress("glBlendEquationi")) != 0 &
(glBlendEquationSeparatei = GLContext.getFunctionAddress("glBlendEquationSeparatei")) != 0 &
(glBlendFunci = GLContext.getFunctionAddress("glBlendFunci")) != 0 &
(glBlendFuncSeparatei = GLContext.getFunctionAddress("glBlendFuncSeparatei")) != 0 &
(glDrawArraysIndirect = GLContext.getFunctionAddress("glDrawArraysIndirect")) != 0 &
(glDrawElementsIndirect = GLContext.getFunctionAddress("glDrawElementsIndirect")) != 0 &
(glUniform1d = GLContext.getFunctionAddress("glUniform1d")) != 0 &
(glUniform2d = GLContext.getFunctionAddress("glUniform2d")) != 0 &
(glUniform3d = GLContext.getFunctionAddress("glUniform3d")) != 0 &
(glUniform4d = GLContext.getFunctionAddress("glUniform4d")) != 0 &
(glUniform1dv = GLContext.getFunctionAddress("glUniform1dv")) != 0 &
(glUniform2dv = GLContext.getFunctionAddress("glUniform2dv")) != 0 &
(glUniform3dv = GLContext.getFunctionAddress("glUniform3dv")) != 0 &
(glUniform4dv = GLContext.getFunctionAddress("glUniform4dv")) != 0 &
(glUniformMatrix2dv = GLContext.getFunctionAddress("glUniformMatrix2dv")) != 0 &
(glUniformMatrix3dv = GLContext.getFunctionAddress("glUniformMatrix3dv")) != 0 &
(glUniformMatrix4dv = GLContext.getFunctionAddress("glUniformMatrix4dv")) != 0 &
(glUniformMatrix2x3dv = GLContext.getFunctionAddress("glUniformMatrix2x3dv")) != 0 &
(glUniformMatrix2x4dv = GLContext.getFunctionAddress("glUniformMatrix2x4dv")) != 0 &
(glUniformMatrix3x2dv = GLContext.getFunctionAddress("glUniformMatrix3x2dv")) != 0 &
(glUniformMatrix3x4dv = GLContext.getFunctionAddress("glUniformMatrix3x4dv")) != 0 &
(glUniformMatrix4x2dv = GLContext.getFunctionAddress("glUniformMatrix4x2dv")) != 0 &
(glUniformMatrix4x3dv = GLContext.getFunctionAddress("glUniformMatrix4x3dv")) != 0 &
(glGetUniformdv = GLContext.getFunctionAddress("glGetUniformdv")) != 0 &
((glMinSampleShading = GLContext.getFunctionAddress("glMinSampleShading")) != 0 || true) &
(glGetSubroutineUniformLocation = GLContext.getFunctionAddress("glGetSubroutineUniformLocation")) != 0 &
(glGetSubroutineIndex = GLContext.getFunctionAddress("glGetSubroutineIndex")) != 0 &
(glGetActiveSubroutineUniformiv = GLContext.getFunctionAddress("glGetActiveSubroutineUniformiv")) != 0 &
(glGetActiveSubroutineUniformName = GLContext.getFunctionAddress("glGetActiveSubroutineUniformName")) != 0 &
(glGetActiveSubroutineName = GLContext.getFunctionAddress("glGetActiveSubroutineName")) != 0 &
(glUniformSubroutinesuiv = GLContext.getFunctionAddress("glUniformSubroutinesuiv")) != 0 &
(glGetUniformSubroutineuiv = GLContext.getFunctionAddress("glGetUniformSubroutineuiv")) != 0 &
(glGetProgramStageiv = GLContext.getFunctionAddress("glGetProgramStageiv")) != 0 &
(glPatchParameteri = GLContext.getFunctionAddress("glPatchParameteri")) != 0 &
(glPatchParameterfv = GLContext.getFunctionAddress("glPatchParameterfv")) != 0 &
(glBindTransformFeedback = GLContext.getFunctionAddress("glBindTransformFeedback")) != 0 &
(glDeleteTransformFeedbacks = GLContext.getFunctionAddress("glDeleteTransformFeedbacks")) != 0 &
(glGenTransformFeedbacks = GLContext.getFunctionAddress("glGenTransformFeedbacks")) != 0 &
(glIsTransformFeedback = GLContext.getFunctionAddress("glIsTransformFeedback")) != 0 &
(glPauseTransformFeedback = GLContext.getFunctionAddress("glPauseTransformFeedback")) != 0 &
(glResumeTransformFeedback = GLContext.getFunctionAddress("glResumeTransformFeedback")) != 0 &
(glDrawTransformFeedback = GLContext.getFunctionAddress("glDrawTransformFeedback")) != 0 &
(glDrawTransformFeedbackStream = GLContext.getFunctionAddress("glDrawTransformFeedbackStream")) != 0 &
(glBeginQueryIndexed = GLContext.getFunctionAddress("glBeginQueryIndexed")) != 0 &
(glEndQueryIndexed = GLContext.getFunctionAddress("glEndQueryIndexed")) != 0 &
(glGetQueryIndexediv = GLContext.getFunctionAddress("glGetQueryIndexediv")) != 0;
}
private boolean GL41_initNativeFunctionAddresses() {
return
((glReleaseShaderCompiler = GLContext.getFunctionAddress("glReleaseShaderCompiler")) != 0 || true) &
((glShaderBinary = GLContext.getFunctionAddress("glShaderBinary")) != 0 || true) &
((glGetShaderPrecisionFormat = GLContext.getFunctionAddress("glGetShaderPrecisionFormat")) != 0 || true) &
((glDepthRangef = GLContext.getFunctionAddress("glDepthRangef")) != 0 || true) &
((glClearDepthf = GLContext.getFunctionAddress("glClearDepthf")) != 0 || true) &
(glGetProgramBinary = GLContext.getFunctionAddress("glGetProgramBinary")) != 0 &
(glProgramBinary = GLContext.getFunctionAddress("glProgramBinary")) != 0 &
(glProgramParameteri = GLContext.getFunctionAddress("glProgramParameteri")) != 0 &
(glUseProgramStages = GLContext.getFunctionAddress("glUseProgramStages")) != 0 &
(glActiveShaderProgram = GLContext.getFunctionAddress("glActiveShaderProgram")) != 0 &
(glCreateShaderProgramv = GLContext.getFunctionAddress("glCreateShaderProgramv")) != 0 &
(glBindProgramPipeline = GLContext.getFunctionAddress("glBindProgramPipeline")) != 0 &
(glDeleteProgramPipelines = GLContext.getFunctionAddress("glDeleteProgramPipelines")) != 0 &
(glGenProgramPipelines = GLContext.getFunctionAddress("glGenProgramPipelines")) != 0 &
(glIsProgramPipeline = GLContext.getFunctionAddress("glIsProgramPipeline")) != 0 &
(glGetProgramPipelineiv = GLContext.getFunctionAddress("glGetProgramPipelineiv")) != 0 &
(glProgramUniform1i = GLContext.getFunctionAddress("glProgramUniform1i")) != 0 &
(glProgramUniform2i = GLContext.getFunctionAddress("glProgramUniform2i")) != 0 &
(glProgramUniform3i = GLContext.getFunctionAddress("glProgramUniform3i")) != 0 &
(glProgramUniform4i = GLContext.getFunctionAddress("glProgramUniform4i")) != 0 &
(glProgramUniform1f = GLContext.getFunctionAddress("glProgramUniform1f")) != 0 &
(glProgramUniform2f = GLContext.getFunctionAddress("glProgramUniform2f")) != 0 &
(glProgramUniform3f = GLContext.getFunctionAddress("glProgramUniform3f")) != 0 &
(glProgramUniform4f = GLContext.getFunctionAddress("glProgramUniform4f")) != 0 &
(glProgramUniform1d = GLContext.getFunctionAddress("glProgramUniform1d")) != 0 &
(glProgramUniform2d = GLContext.getFunctionAddress("glProgramUniform2d")) != 0 &
(glProgramUniform3d = GLContext.getFunctionAddress("glProgramUniform3d")) != 0 &
(glProgramUniform4d = GLContext.getFunctionAddress("glProgramUniform4d")) != 0 &
(glProgramUniform1iv = GLContext.getFunctionAddress("glProgramUniform1iv")) != 0 &
(glProgramUniform2iv = GLContext.getFunctionAddress("glProgramUniform2iv")) != 0 &
(glProgramUniform3iv = GLContext.getFunctionAddress("glProgramUniform3iv")) != 0 &
(glProgramUniform4iv = GLContext.getFunctionAddress("glProgramUniform4iv")) != 0 &
(glProgramUniform1fv = GLContext.getFunctionAddress("glProgramUniform1fv")) != 0 &
(glProgramUniform2fv = GLContext.getFunctionAddress("glProgramUniform2fv")) != 0 &
(glProgramUniform3fv = GLContext.getFunctionAddress("glProgramUniform3fv")) != 0 &
(glProgramUniform4fv = GLContext.getFunctionAddress("glProgramUniform4fv")) != 0 &
(glProgramUniform1dv = GLContext.getFunctionAddress("glProgramUniform1dv")) != 0 &
(glProgramUniform2dv = GLContext.getFunctionAddress("glProgramUniform2dv")) != 0 &
(glProgramUniform3dv = GLContext.getFunctionAddress("glProgramUniform3dv")) != 0 &
(glProgramUniform4dv = GLContext.getFunctionAddress("glProgramUniform4dv")) != 0 &
(glProgramUniform1ui = GLContext.getFunctionAddress("glProgramUniform1ui")) != 0 &
(glProgramUniform2ui = GLContext.getFunctionAddress("glProgramUniform2ui")) != 0 &
(glProgramUniform3ui = GLContext.getFunctionAddress("glProgramUniform3ui")) != 0 &
(glProgramUniform4ui = GLContext.getFunctionAddress("glProgramUniform4ui")) != 0 &
(glProgramUniform1uiv = GLContext.getFunctionAddress("glProgramUniform1uiv")) != 0 &
(glProgramUniform2uiv = GLContext.getFunctionAddress("glProgramUniform2uiv")) != 0 &
(glProgramUniform3uiv = GLContext.getFunctionAddress("glProgramUniform3uiv")) != 0 &
(glProgramUniform4uiv = GLContext.getFunctionAddress("glProgramUniform4uiv")) != 0 &
(glProgramUniformMatrix2fv = GLContext.getFunctionAddress("glProgramUniformMatrix2fv")) != 0 &
(glProgramUniformMatrix3fv = GLContext.getFunctionAddress("glProgramUniformMatrix3fv")) != 0 &
(glProgramUniformMatrix4fv = GLContext.getFunctionAddress("glProgramUniformMatrix4fv")) != 0 &
(glProgramUniformMatrix2dv = GLContext.getFunctionAddress("glProgramUniformMatrix2dv")) != 0 &
(glProgramUniformMatrix3dv = GLContext.getFunctionAddress("glProgramUniformMatrix3dv")) != 0 &
(glProgramUniformMatrix4dv = GLContext.getFunctionAddress("glProgramUniformMatrix4dv")) != 0 &
(glProgramUniformMatrix2x3fv = GLContext.getFunctionAddress("glProgramUniformMatrix2x3fv")) != 0 &
(glProgramUniformMatrix3x2fv = GLContext.getFunctionAddress("glProgramUniformMatrix3x2fv")) != 0 &
(glProgramUniformMatrix2x4fv = GLContext.getFunctionAddress("glProgramUniformMatrix2x4fv")) != 0 &
(glProgramUniformMatrix4x2fv = GLContext.getFunctionAddress("glProgramUniformMatrix4x2fv")) != 0 &
(glProgramUniformMatrix3x4fv = GLContext.getFunctionAddress("glProgramUniformMatrix3x4fv")) != 0 &
(glProgramUniformMatrix4x3fv = GLContext.getFunctionAddress("glProgramUniformMatrix4x3fv")) != 0 &
(glProgramUniformMatrix2x3dv = GLContext.getFunctionAddress("glProgramUniformMatrix2x3dv")) != 0 &
(glProgramUniformMatrix3x2dv = GLContext.getFunctionAddress("glProgramUniformMatrix3x2dv")) != 0 &
(glProgramUniformMatrix2x4dv = GLContext.getFunctionAddress("glProgramUniformMatrix2x4dv")) != 0 &
(glProgramUniformMatrix4x2dv = GLContext.getFunctionAddress("glProgramUniformMatrix4x2dv")) != 0 &
(glProgramUniformMatrix3x4dv = GLContext.getFunctionAddress("glProgramUniformMatrix3x4dv")) != 0 &
(glProgramUniformMatrix4x3dv = GLContext.getFunctionAddress("glProgramUniformMatrix4x3dv")) != 0 &
(glValidateProgramPipeline = GLContext.getFunctionAddress("glValidateProgramPipeline")) != 0 &
(glGetProgramPipelineInfoLog = GLContext.getFunctionAddress("glGetProgramPipelineInfoLog")) != 0 &
((glVertexAttribL1d = GLContext.getFunctionAddress("glVertexAttribL1d")) != 0 || true) &
((glVertexAttribL2d = GLContext.getFunctionAddress("glVertexAttribL2d")) != 0 || true) &
((glVertexAttribL3d = GLContext.getFunctionAddress("glVertexAttribL3d")) != 0 || true) &
((glVertexAttribL4d = GLContext.getFunctionAddress("glVertexAttribL4d")) != 0 || true) &
((glVertexAttribL1dv = GLContext.getFunctionAddress("glVertexAttribL1dv")) != 0 || true) &
((glVertexAttribL2dv = GLContext.getFunctionAddress("glVertexAttribL2dv")) != 0 || true) &
((glVertexAttribL3dv = GLContext.getFunctionAddress("glVertexAttribL3dv")) != 0 || true) &
((glVertexAttribL4dv = GLContext.getFunctionAddress("glVertexAttribL4dv")) != 0 || true) &
((glVertexAttribLPointer = GLContext.getFunctionAddress("glVertexAttribLPointer")) != 0 || true) &
((glGetVertexAttribLdv = GLContext.getFunctionAddress("glGetVertexAttribLdv")) != 0 || true) &
(glViewportArrayv = GLContext.getFunctionAddress("glViewportArrayv")) != 0 &
(glViewportIndexedf = GLContext.getFunctionAddress("glViewportIndexedf")) != 0 &
(glViewportIndexedfv = GLContext.getFunctionAddress("glViewportIndexedfv")) != 0 &
(glScissorArrayv = GLContext.getFunctionAddress("glScissorArrayv")) != 0 &
(glScissorIndexed = GLContext.getFunctionAddress("glScissorIndexed")) != 0 &
(glScissorIndexedv = GLContext.getFunctionAddress("glScissorIndexedv")) != 0 &
(glDepthRangeArrayv = GLContext.getFunctionAddress("glDepthRangeArrayv")) != 0 &
(glDepthRangeIndexed = GLContext.getFunctionAddress("glDepthRangeIndexed")) != 0 &
(glGetFloati_v = GLContext.getFunctionAddress("glGetFloati_v")) != 0 &
(glGetDoublei_v = GLContext.getFunctionAddress("glGetDoublei_v")) != 0;
}
private boolean GREMEDY_string_marker_initNativeFunctionAddresses() {
return
(glStringMarkerGREMEDY = GLContext.getFunctionAddress("glStringMarkerGREMEDY")) != 0;
}
private boolean NV_conditional_render_initNativeFunctionAddresses() {
return
(glBeginConditionalRenderNV = GLContext.getFunctionAddress("glBeginConditionalRenderNV")) != 0 &
(glEndConditionalRenderNV = GLContext.getFunctionAddress("glEndConditionalRenderNV")) != 0;
}
private boolean NV_copy_image_initNativeFunctionAddresses() {
return
(glCopyImageSubDataNV = GLContext.getFunctionAddress("glCopyImageSubDataNV")) != 0;
}
private boolean NV_depth_buffer_float_initNativeFunctionAddresses() {
return
(glDepthRangedNV = GLContext.getFunctionAddress("glDepthRangedNV")) != 0 &
(glClearDepthdNV = GLContext.getFunctionAddress("glClearDepthdNV")) != 0 &
(glDepthBoundsdNV = GLContext.getFunctionAddress("glDepthBoundsdNV")) != 0;
}
private boolean NV_evaluators_initNativeFunctionAddresses() {
return
(glGetMapControlPointsNV = GLContext.getFunctionAddress("glGetMapControlPointsNV")) != 0 &
(glMapControlPointsNV = GLContext.getFunctionAddress("glMapControlPointsNV")) != 0 &
(glMapParameterfvNV = GLContext.getFunctionAddress("glMapParameterfvNV")) != 0 &
(glMapParameterivNV = GLContext.getFunctionAddress("glMapParameterivNV")) != 0 &
(glGetMapParameterfvNV = GLContext.getFunctionAddress("glGetMapParameterfvNV")) != 0 &
(glGetMapParameterivNV = GLContext.getFunctionAddress("glGetMapParameterivNV")) != 0 &
(glGetMapAttribParameterfvNV = GLContext.getFunctionAddress("glGetMapAttribParameterfvNV")) != 0 &
(glGetMapAttribParameterivNV = GLContext.getFunctionAddress("glGetMapAttribParameterivNV")) != 0 &
(glEvalMapsNV = GLContext.getFunctionAddress("glEvalMapsNV")) != 0;
}
private boolean NV_explicit_multisample_initNativeFunctionAddresses() {
return
(glGetBooleanIndexedvEXT = GLContext.getFunctionAddress("glGetBooleanIndexedvEXT")) != 0 &
(glGetIntegerIndexedvEXT = GLContext.getFunctionAddress("glGetIntegerIndexedvEXT")) != 0 &
(glGetMultisamplefvNV = GLContext.getFunctionAddress("glGetMultisamplefvNV")) != 0 &
(glSampleMaskIndexedNV = GLContext.getFunctionAddress("glSampleMaskIndexedNV")) != 0 &
(glTexRenderbufferNV = GLContext.getFunctionAddress("glTexRenderbufferNV")) != 0;
}
private boolean NV_fence_initNativeFunctionAddresses() {
return
(glGenFencesNV = GLContext.getFunctionAddress("glGenFencesNV")) != 0 &
(glDeleteFencesNV = GLContext.getFunctionAddress("glDeleteFencesNV")) != 0 &
(glSetFenceNV = GLContext.getFunctionAddress("glSetFenceNV")) != 0 &
(glTestFenceNV = GLContext.getFunctionAddress("glTestFenceNV")) != 0 &
(glFinishFenceNV = GLContext.getFunctionAddress("glFinishFenceNV")) != 0 &
(glIsFenceNV = GLContext.getFunctionAddress("glIsFenceNV")) != 0 &
(glGetFenceivNV = GLContext.getFunctionAddress("glGetFenceivNV")) != 0;
}
private boolean NV_fragment_program_initNativeFunctionAddresses() {
return
(glProgramNamedParameter4fNV = GLContext.getFunctionAddress("glProgramNamedParameter4fNV")) != 0 &
(glProgramNamedParameter4dNV = GLContext.getFunctionAddress("glProgramNamedParameter4dNV")) != 0 &
(glGetProgramNamedParameterfvNV = GLContext.getFunctionAddress("glGetProgramNamedParameterfvNV")) != 0 &
(glGetProgramNamedParameterdvNV = GLContext.getFunctionAddress("glGetProgramNamedParameterdvNV")) != 0;
}
private boolean NV_framebuffer_multisample_coverage_initNativeFunctionAddresses() {
return
(glRenderbufferStorageMultisampleCoverageNV = GLContext.getFunctionAddress("glRenderbufferStorageMultisampleCoverageNV")) != 0;
}
private boolean NV_geometry_program4_initNativeFunctionAddresses() {
return
(glProgramVertexLimitNV = GLContext.getFunctionAddress("glProgramVertexLimitNV")) != 0 &
(glFramebufferTextureEXT = GLContext.getFunctionAddress("glFramebufferTextureEXT")) != 0 &
(glFramebufferTextureLayerEXT = GLContext.getFunctionAddress("glFramebufferTextureLayerEXT")) != 0 &
(glFramebufferTextureFaceEXT = GLContext.getFunctionAddress("glFramebufferTextureFaceEXT")) != 0;
}
private boolean NV_gpu_program4_initNativeFunctionAddresses() {
return
(glProgramLocalParameterI4iNV = GLContext.getFunctionAddress("glProgramLocalParameterI4iNV")) != 0 &
(glProgramLocalParameterI4ivNV = GLContext.getFunctionAddress("glProgramLocalParameterI4ivNV")) != 0 &
(glProgramLocalParametersI4ivNV = GLContext.getFunctionAddress("glProgramLocalParametersI4ivNV")) != 0 &
(glProgramLocalParameterI4uiNV = GLContext.getFunctionAddress("glProgramLocalParameterI4uiNV")) != 0 &
(glProgramLocalParameterI4uivNV = GLContext.getFunctionAddress("glProgramLocalParameterI4uivNV")) != 0 &
(glProgramLocalParametersI4uivNV = GLContext.getFunctionAddress("glProgramLocalParametersI4uivNV")) != 0 &
(glProgramEnvParameterI4iNV = GLContext.getFunctionAddress("glProgramEnvParameterI4iNV")) != 0 &
(glProgramEnvParameterI4ivNV = GLContext.getFunctionAddress("glProgramEnvParameterI4ivNV")) != 0 &
(glProgramEnvParametersI4ivNV = GLContext.getFunctionAddress("glProgramEnvParametersI4ivNV")) != 0 &
(glProgramEnvParameterI4uiNV = GLContext.getFunctionAddress("glProgramEnvParameterI4uiNV")) != 0 &
(glProgramEnvParameterI4uivNV = GLContext.getFunctionAddress("glProgramEnvParameterI4uivNV")) != 0 &
(glProgramEnvParametersI4uivNV = GLContext.getFunctionAddress("glProgramEnvParametersI4uivNV")) != 0 &
(glGetProgramLocalParameterIivNV = GLContext.getFunctionAddress("glGetProgramLocalParameterIivNV")) != 0 &
(glGetProgramLocalParameterIuivNV = GLContext.getFunctionAddress("glGetProgramLocalParameterIuivNV")) != 0 &
(glGetProgramEnvParameterIivNV = GLContext.getFunctionAddress("glGetProgramEnvParameterIivNV")) != 0 &
(glGetProgramEnvParameterIuivNV = GLContext.getFunctionAddress("glGetProgramEnvParameterIuivNV")) != 0;
}
private boolean NV_gpu_shader5_initNativeFunctionAddresses(Set<String> supported_extensions) {
return
(glUniform1i64NV = GLContext.getFunctionAddress("glUniform1i64NV")) != 0 &
(glUniform2i64NV = GLContext.getFunctionAddress("glUniform2i64NV")) != 0 &
(glUniform3i64NV = GLContext.getFunctionAddress("glUniform3i64NV")) != 0 &
(glUniform4i64NV = GLContext.getFunctionAddress("glUniform4i64NV")) != 0 &
(glUniform1i64vNV = GLContext.getFunctionAddress("glUniform1i64vNV")) != 0 &
(glUniform2i64vNV = GLContext.getFunctionAddress("glUniform2i64vNV")) != 0 &
(glUniform3i64vNV = GLContext.getFunctionAddress("glUniform3i64vNV")) != 0 &
(glUniform4i64vNV = GLContext.getFunctionAddress("glUniform4i64vNV")) != 0 &
(glUniform1ui64NV = GLContext.getFunctionAddress("glUniform1ui64NV")) != 0 &
(glUniform2ui64NV = GLContext.getFunctionAddress("glUniform2ui64NV")) != 0 &
(glUniform3ui64NV = GLContext.getFunctionAddress("glUniform3ui64NV")) != 0 &
(glUniform4ui64NV = GLContext.getFunctionAddress("glUniform4ui64NV")) != 0 &
(glUniform1ui64vNV = GLContext.getFunctionAddress("glUniform1ui64vNV")) != 0 &
(glUniform2ui64vNV = GLContext.getFunctionAddress("glUniform2ui64vNV")) != 0 &
(glUniform3ui64vNV = GLContext.getFunctionAddress("glUniform3ui64vNV")) != 0 &
(glUniform4ui64vNV = GLContext.getFunctionAddress("glUniform4ui64vNV")) != 0 &
(glGetUniformi64vNV = GLContext.getFunctionAddress("glGetUniformi64vNV")) != 0 &
(glGetUniformui64vNV = GLContext.getFunctionAddress("glGetUniformui64vNV")) != 0 &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform1i64NV = GLContext.getFunctionAddress("glProgramUniform1i64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform2i64NV = GLContext.getFunctionAddress("glProgramUniform2i64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform3i64NV = GLContext.getFunctionAddress("glProgramUniform3i64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform4i64NV = GLContext.getFunctionAddress("glProgramUniform4i64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform1i64vNV = GLContext.getFunctionAddress("glProgramUniform1i64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform2i64vNV = GLContext.getFunctionAddress("glProgramUniform2i64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform3i64vNV = GLContext.getFunctionAddress("glProgramUniform3i64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform4i64vNV = GLContext.getFunctionAddress("glProgramUniform4i64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform1ui64NV = GLContext.getFunctionAddress("glProgramUniform1ui64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform2ui64NV = GLContext.getFunctionAddress("glProgramUniform2ui64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform3ui64NV = GLContext.getFunctionAddress("glProgramUniform3ui64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform4ui64NV = GLContext.getFunctionAddress("glProgramUniform4ui64NV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform1ui64vNV = GLContext.getFunctionAddress("glProgramUniform1ui64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform2ui64vNV = GLContext.getFunctionAddress("glProgramUniform2ui64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform3ui64vNV = GLContext.getFunctionAddress("glProgramUniform3ui64vNV")) != 0) &
(!supported_extensions.contains("EXT_direct_state_access") || (glProgramUniform4ui64vNV = GLContext.getFunctionAddress("glProgramUniform4ui64vNV")) != 0);
}
private boolean NV_half_float_initNativeFunctionAddresses() {
return
(glVertex2hNV = GLContext.getFunctionAddress("glVertex2hNV")) != 0 &
(glVertex3hNV = GLContext.getFunctionAddress("glVertex3hNV")) != 0 &
(glVertex4hNV = GLContext.getFunctionAddress("glVertex4hNV")) != 0 &
(glNormal3hNV = GLContext.getFunctionAddress("glNormal3hNV")) != 0 &
(glColor3hNV = GLContext.getFunctionAddress("glColor3hNV")) != 0 &
(glColor4hNV = GLContext.getFunctionAddress("glColor4hNV")) != 0 &
(glTexCoord1hNV = GLContext.getFunctionAddress("glTexCoord1hNV")) != 0 &
(glTexCoord2hNV = GLContext.getFunctionAddress("glTexCoord2hNV")) != 0 &
(glTexCoord3hNV = GLContext.getFunctionAddress("glTexCoord3hNV")) != 0 &
(glTexCoord4hNV = GLContext.getFunctionAddress("glTexCoord4hNV")) != 0 &
(glMultiTexCoord1hNV = GLContext.getFunctionAddress("glMultiTexCoord1hNV")) != 0 &
(glMultiTexCoord2hNV = GLContext.getFunctionAddress("glMultiTexCoord2hNV")) != 0 &
(glMultiTexCoord3hNV = GLContext.getFunctionAddress("glMultiTexCoord3hNV")) != 0 &
(glMultiTexCoord4hNV = GLContext.getFunctionAddress("glMultiTexCoord4hNV")) != 0 &
(glFogCoordhNV = GLContext.getFunctionAddress("glFogCoordhNV")) != 0 &
(glSecondaryColor3hNV = GLContext.getFunctionAddress("glSecondaryColor3hNV")) != 0 &
((glVertexWeighthNV = GLContext.getFunctionAddress("glVertexWeighthNV")) != 0 || true) &
((glVertexAttrib1hNV = GLContext.getFunctionAddress("glVertexAttrib1hNV")) != 0 || true) &
((glVertexAttrib2hNV = GLContext.getFunctionAddress("glVertexAttrib2hNV")) != 0 || true) &
((glVertexAttrib3hNV = GLContext.getFunctionAddress("glVertexAttrib3hNV")) != 0 || true) &
((glVertexAttrib4hNV = GLContext.getFunctionAddress("glVertexAttrib4hNV")) != 0 || true) &
((glVertexAttribs1hvNV = GLContext.getFunctionAddress("glVertexAttribs1hvNV")) != 0 || true) &
((glVertexAttribs2hvNV = GLContext.getFunctionAddress("glVertexAttribs2hvNV")) != 0 || true) &
((glVertexAttribs3hvNV = GLContext.getFunctionAddress("glVertexAttribs3hvNV")) != 0 || true) &
((glVertexAttribs4hvNV = GLContext.getFunctionAddress("glVertexAttribs4hvNV")) != 0 || true);
}
private boolean NV_occlusion_query_initNativeFunctionAddresses() {
return
(glGenOcclusionQueriesNV = GLContext.getFunctionAddress("glGenOcclusionQueriesNV")) != 0 &
(glDeleteOcclusionQueriesNV = GLContext.getFunctionAddress("glDeleteOcclusionQueriesNV")) != 0 &
(glIsOcclusionQueryNV = GLContext.getFunctionAddress("glIsOcclusionQueryNV")) != 0 &
(glBeginOcclusionQueryNV = GLContext.getFunctionAddress("glBeginOcclusionQueryNV")) != 0 &
(glEndOcclusionQueryNV = GLContext.getFunctionAddress("glEndOcclusionQueryNV")) != 0 &
(glGetOcclusionQueryuivNV = GLContext.getFunctionAddress("glGetOcclusionQueryuivNV")) != 0 &
(glGetOcclusionQueryivNV = GLContext.getFunctionAddress("glGetOcclusionQueryivNV")) != 0;
}
private boolean NV_parameter_buffer_object_initNativeFunctionAddresses() {
return
(glProgramBufferParametersfvNV = GLContext.getFunctionAddress("glProgramBufferParametersfvNV")) != 0 &
(glProgramBufferParametersIivNV = GLContext.getFunctionAddress("glProgramBufferParametersIivNV")) != 0 &
(glProgramBufferParametersIuivNV = GLContext.getFunctionAddress("glProgramBufferParametersIuivNV")) != 0;
}
private boolean NV_pixel_data_range_initNativeFunctionAddresses() {
return
(glPixelDataRangeNV = GLContext.getFunctionAddress("glPixelDataRangeNV")) != 0 &
(glFlushPixelDataRangeNV = GLContext.getFunctionAddress("glFlushPixelDataRangeNV")) != 0;
}
private boolean NV_point_sprite_initNativeFunctionAddresses() {
return
(glPointParameteriNV = GLContext.getFunctionAddress("glPointParameteriNV")) != 0 &
(glPointParameterivNV = GLContext.getFunctionAddress("glPointParameterivNV")) != 0;
}
private boolean NV_primitive_restart_initNativeFunctionAddresses() {
return
(glPrimitiveRestartNV = GLContext.getFunctionAddress("glPrimitiveRestartNV")) != 0 &
(glPrimitiveRestartIndexNV = GLContext.getFunctionAddress("glPrimitiveRestartIndexNV")) != 0;
}
private boolean NV_program_initNativeFunctionAddresses() {
return
(glLoadProgramNV = GLContext.getFunctionAddress("glLoadProgramNV")) != 0 &
(glBindProgramNV = GLContext.getFunctionAddress("glBindProgramNV")) != 0 &
(glDeleteProgramsNV = GLContext.getFunctionAddress("glDeleteProgramsNV")) != 0 &
(glGenProgramsNV = GLContext.getFunctionAddress("glGenProgramsNV")) != 0 &
(glGetProgramivNV = GLContext.getFunctionAddress("glGetProgramivNV")) != 0 &
(glGetProgramStringNV = GLContext.getFunctionAddress("glGetProgramStringNV")) != 0 &
(glIsProgramNV = GLContext.getFunctionAddress("glIsProgramNV")) != 0 &
(glAreProgramsResidentNV = GLContext.getFunctionAddress("glAreProgramsResidentNV")) != 0 &
(glRequestResidentProgramsNV = GLContext.getFunctionAddress("glRequestResidentProgramsNV")) != 0;
}
private boolean NV_register_combiners_initNativeFunctionAddresses() {
return
(glCombinerParameterfNV = GLContext.getFunctionAddress("glCombinerParameterfNV")) != 0 &
(glCombinerParameterfvNV = GLContext.getFunctionAddress("glCombinerParameterfvNV")) != 0 &
(glCombinerParameteriNV = GLContext.getFunctionAddress("glCombinerParameteriNV")) != 0 &
(glCombinerParameterivNV = GLContext.getFunctionAddress("glCombinerParameterivNV")) != 0 &
(glCombinerInputNV = GLContext.getFunctionAddress("glCombinerInputNV")) != 0 &
(glCombinerOutputNV = GLContext.getFunctionAddress("glCombinerOutputNV")) != 0 &
(glFinalCombinerInputNV = GLContext.getFunctionAddress("glFinalCombinerInputNV")) != 0 &
(glGetCombinerInputParameterfvNV = GLContext.getFunctionAddress("glGetCombinerInputParameterfvNV")) != 0 &
(glGetCombinerInputParameterivNV = GLContext.getFunctionAddress("glGetCombinerInputParameterivNV")) != 0 &
(glGetCombinerOutputParameterfvNV = GLContext.getFunctionAddress("glGetCombinerOutputParameterfvNV")) != 0 &
(glGetCombinerOutputParameterivNV = GLContext.getFunctionAddress("glGetCombinerOutputParameterivNV")) != 0 &
(glGetFinalCombinerInputParameterfvNV = GLContext.getFunctionAddress("glGetFinalCombinerInputParameterfvNV")) != 0 &
(glGetFinalCombinerInputParameterivNV = GLContext.getFunctionAddress("glGetFinalCombinerInputParameterivNV")) != 0;
}
private boolean NV_register_combiners2_initNativeFunctionAddresses() {
return
(glCombinerStageParameterfvNV = GLContext.getFunctionAddress("glCombinerStageParameterfvNV")) != 0 &
(glGetCombinerStageParameterfvNV = GLContext.getFunctionAddress("glGetCombinerStageParameterfvNV")) != 0;
}
private boolean NV_shader_buffer_load_initNativeFunctionAddresses() {
return
(glMakeBufferResidentNV = GLContext.getFunctionAddress("glMakeBufferResidentNV")) != 0 &
(glMakeBufferNonResidentNV = GLContext.getFunctionAddress("glMakeBufferNonResidentNV")) != 0 &
(glIsBufferResidentNV = GLContext.getFunctionAddress("glIsBufferResidentNV")) != 0 &
(glMakeNamedBufferResidentNV = GLContext.getFunctionAddress("glMakeNamedBufferResidentNV")) != 0 &
(glMakeNamedBufferNonResidentNV = GLContext.getFunctionAddress("glMakeNamedBufferNonResidentNV")) != 0 &
(glIsNamedBufferResidentNV = GLContext.getFunctionAddress("glIsNamedBufferResidentNV")) != 0 &
(glGetBufferParameterui64vNV = GLContext.getFunctionAddress("glGetBufferParameterui64vNV")) != 0 &
(glGetNamedBufferParameterui64vNV = GLContext.getFunctionAddress("glGetNamedBufferParameterui64vNV")) != 0 &
(glGetIntegerui64vNV = GLContext.getFunctionAddress("glGetIntegerui64vNV")) != 0 &
(glUniformui64NV = GLContext.getFunctionAddress("glUniformui64NV")) != 0 &
(glUniformui64vNV = GLContext.getFunctionAddress("glUniformui64vNV")) != 0 &
(glGetUniformui64vNV = GLContext.getFunctionAddress("glGetUniformui64vNV")) != 0 &
(glProgramUniformui64NV = GLContext.getFunctionAddress("glProgramUniformui64NV")) != 0 &
(glProgramUniformui64vNV = GLContext.getFunctionAddress("glProgramUniformui64vNV")) != 0;
}
private boolean NV_texture_barrier_initNativeFunctionAddresses() {
return
(glTextureBarrierNV = GLContext.getFunctionAddress("glTextureBarrierNV")) != 0;
}
private boolean NV_transform_feedback_initNativeFunctionAddresses() {
return
(glBindBufferRangeNV = GLContext.getFunctionAddress("glBindBufferRangeNV")) != 0 &
(glBindBufferOffsetNV = GLContext.getFunctionAddress("glBindBufferOffsetNV")) != 0 &
(glBindBufferBaseNV = GLContext.getFunctionAddress("glBindBufferBaseNV")) != 0 &
(glTransformFeedbackAttribsNV = GLContext.getFunctionAddress("glTransformFeedbackAttribsNV")) != 0 &
(glTransformFeedbackVaryingsNV = GLContext.getFunctionAddress("glTransformFeedbackVaryingsNV")) != 0 &
(glBeginTransformFeedbackNV = GLContext.getFunctionAddress("glBeginTransformFeedbackNV")) != 0 &
(glEndTransformFeedbackNV = GLContext.getFunctionAddress("glEndTransformFeedbackNV")) != 0 &
(glGetVaryingLocationNV = GLContext.getFunctionAddress("glGetVaryingLocationNV")) != 0 &
(glGetActiveVaryingNV = GLContext.getFunctionAddress("glGetActiveVaryingNV")) != 0 &
(glActiveVaryingNV = GLContext.getFunctionAddress("glActiveVaryingNV")) != 0 &
(glGetTransformFeedbackVaryingNV = GLContext.getFunctionAddress("glGetTransformFeedbackVaryingNV")) != 0;
}
private boolean NV_transform_feedback2_initNativeFunctionAddresses() {
return
(glBindTransformFeedbackNV = GLContext.getFunctionAddress("glBindTransformFeedbackNV")) != 0 &
(glDeleteTransformFeedbacksNV = GLContext.getFunctionAddress("glDeleteTransformFeedbacksNV")) != 0 &
(glGenTransformFeedbacksNV = GLContext.getFunctionAddress("glGenTransformFeedbacksNV")) != 0 &
(glIsTransformFeedbackNV = GLContext.getFunctionAddress("glIsTransformFeedbackNV")) != 0 &
(glPauseTransformFeedbackNV = GLContext.getFunctionAddress("glPauseTransformFeedbackNV")) != 0 &
(glResumeTransformFeedbackNV = GLContext.getFunctionAddress("glResumeTransformFeedbackNV")) != 0 &
(glDrawTransformFeedbackNV = GLContext.getFunctionAddress("glDrawTransformFeedbackNV")) != 0;
}
private boolean NV_vertex_array_range_initNativeFunctionAddresses() {
return
(glVertexArrayRangeNV = GLContext.getFunctionAddress("glVertexArrayRangeNV")) != 0 &
(glFlushVertexArrayRangeNV = GLContext.getFunctionAddress("glFlushVertexArrayRangeNV")) != 0 &
(glAllocateMemoryNV = GLContext.getPlatformSpecificFunctionAddress("gl", new String[]{"Windows", "Linux"}, new String[]{"wgl", "glX"}, "glAllocateMemoryNV")) != 0 &
(glFreeMemoryNV = GLContext.getPlatformSpecificFunctionAddress("gl", new String[]{"Windows", "Linux"}, new String[]{"wgl", "glX"}, "glFreeMemoryNV")) != 0;
}
private boolean NV_vertex_attrib_integer_64bit_initNativeFunctionAddresses(Set<String> supported_extensions) {
return
(glVertexAttribL1i64NV = GLContext.getFunctionAddress("glVertexAttribL1i64NV")) != 0 &
(glVertexAttribL2i64NV = GLContext.getFunctionAddress("glVertexAttribL2i64NV")) != 0 &
(glVertexAttribL3i64NV = GLContext.getFunctionAddress("glVertexAttribL3i64NV")) != 0 &
(glVertexAttribL4i64NV = GLContext.getFunctionAddress("glVertexAttribL4i64NV")) != 0 &
(glVertexAttribL1i64vNV = GLContext.getFunctionAddress("glVertexAttribL1i64vNV")) != 0 &
(glVertexAttribL2i64vNV = GLContext.getFunctionAddress("glVertexAttribL2i64vNV")) != 0 &
(glVertexAttribL3i64vNV = GLContext.getFunctionAddress("glVertexAttribL3i64vNV")) != 0 &
(glVertexAttribL4i64vNV = GLContext.getFunctionAddress("glVertexAttribL4i64vNV")) != 0 &
(glVertexAttribL1ui64NV = GLContext.getFunctionAddress("glVertexAttribL1ui64NV")) != 0 &
(glVertexAttribL2ui64NV = GLContext.getFunctionAddress("glVertexAttribL2ui64NV")) != 0 &
(glVertexAttribL3ui64NV = GLContext.getFunctionAddress("glVertexAttribL3ui64NV")) != 0 &
(glVertexAttribL4ui64NV = GLContext.getFunctionAddress("glVertexAttribL4ui64NV")) != 0 &
(glVertexAttribL1ui64vNV = GLContext.getFunctionAddress("glVertexAttribL1ui64vNV")) != 0 &
(glVertexAttribL2ui64vNV = GLContext.getFunctionAddress("glVertexAttribL2ui64vNV")) != 0 &
(glVertexAttribL3ui64vNV = GLContext.getFunctionAddress("glVertexAttribL3ui64vNV")) != 0 &
(glVertexAttribL4ui64vNV = GLContext.getFunctionAddress("glVertexAttribL4ui64vNV")) != 0 &
(glGetVertexAttribLi64vNV = GLContext.getFunctionAddress("glGetVertexAttribLi64vNV")) != 0 &
(glGetVertexAttribLui64vNV = GLContext.getFunctionAddress("glGetVertexAttribLui64vNV")) != 0 &
(!supported_extensions.contains("NV_vertex_buffer_unified_memory") || (glVertexAttribLFormatNV = GLContext.getFunctionAddress("glVertexAttribLFormatNV")) != 0);
}
private boolean NV_vertex_buffer_unified_memory_initNativeFunctionAddresses() {
return
(glBufferAddressRangeNV = GLContext.getFunctionAddress("glBufferAddressRangeNV")) != 0 &
(glVertexFormatNV = GLContext.getFunctionAddress("glVertexFormatNV")) != 0 &
(glNormalFormatNV = GLContext.getFunctionAddress("glNormalFormatNV")) != 0 &
(glColorFormatNV = GLContext.getFunctionAddress("glColorFormatNV")) != 0 &
(glIndexFormatNV = GLContext.getFunctionAddress("glIndexFormatNV")) != 0 &
(glTexCoordFormatNV = GLContext.getFunctionAddress("glTexCoordFormatNV")) != 0 &
(glEdgeFlagFormatNV = GLContext.getFunctionAddress("glEdgeFlagFormatNV")) != 0 &
(glSecondaryColorFormatNV = GLContext.getFunctionAddress("glSecondaryColorFormatNV")) != 0 &
(glFogCoordFormatNV = GLContext.getFunctionAddress("glFogCoordFormatNV")) != 0 &
(glVertexAttribFormatNV = GLContext.getFunctionAddress("glVertexAttribFormatNV")) != 0 &
(glVertexAttribIFormatNV = GLContext.getFunctionAddress("glVertexAttribIFormatNV")) != 0 &
(glGetIntegerui64i_vNV = GLContext.getFunctionAddress("glGetIntegerui64i_vNV")) != 0;
}
private boolean NV_vertex_program_initNativeFunctionAddresses() {
return
(glExecuteProgramNV = GLContext.getFunctionAddress("glExecuteProgramNV")) != 0 &
(glGetProgramParameterfvNV = GLContext.getFunctionAddress("glGetProgramParameterfvNV")) != 0 &
(glGetProgramParameterdvNV = GLContext.getFunctionAddress("glGetProgramParameterdvNV")) != 0 &
(glGetTrackMatrixivNV = GLContext.getFunctionAddress("glGetTrackMatrixivNV")) != 0 &
(glGetVertexAttribfvNV = GLContext.getFunctionAddress("glGetVertexAttribfvNV")) != 0 &
(glGetVertexAttribdvNV = GLContext.getFunctionAddress("glGetVertexAttribdvNV")) != 0 &
(glGetVertexAttribivNV = GLContext.getFunctionAddress("glGetVertexAttribivNV")) != 0 &
(glGetVertexAttribPointervNV = GLContext.getFunctionAddress("glGetVertexAttribPointervNV")) != 0 &
(glProgramParameter4fNV = GLContext.getFunctionAddress("glProgramParameter4fNV")) != 0 &
(glProgramParameter4dNV = GLContext.getFunctionAddress("glProgramParameter4dNV")) != 0 &
(glProgramParameters4fvNV = GLContext.getFunctionAddress("glProgramParameters4fvNV")) != 0 &
(glProgramParameters4dvNV = GLContext.getFunctionAddress("glProgramParameters4dvNV")) != 0 &
(glTrackMatrixNV = GLContext.getFunctionAddress("glTrackMatrixNV")) != 0 &
(glVertexAttribPointerNV = GLContext.getFunctionAddress("glVertexAttribPointerNV")) != 0 &
(glVertexAttrib1sNV = GLContext.getFunctionAddress("glVertexAttrib1sNV")) != 0 &
(glVertexAttrib1fNV = GLContext.getFunctionAddress("glVertexAttrib1fNV")) != 0 &
(glVertexAttrib1dNV = GLContext.getFunctionAddress("glVertexAttrib1dNV")) != 0 &
(glVertexAttrib2sNV = GLContext.getFunctionAddress("glVertexAttrib2sNV")) != 0 &
(glVertexAttrib2fNV = GLContext.getFunctionAddress("glVertexAttrib2fNV")) != 0 &
(glVertexAttrib2dNV = GLContext.getFunctionAddress("glVertexAttrib2dNV")) != 0 &
(glVertexAttrib3sNV = GLContext.getFunctionAddress("glVertexAttrib3sNV")) != 0 &
(glVertexAttrib3fNV = GLContext.getFunctionAddress("glVertexAttrib3fNV")) != 0 &
(glVertexAttrib3dNV = GLContext.getFunctionAddress("glVertexAttrib3dNV")) != 0 &
(glVertexAttrib4sNV = GLContext.getFunctionAddress("glVertexAttrib4sNV")) != 0 &
(glVertexAttrib4fNV = GLContext.getFunctionAddress("glVertexAttrib4fNV")) != 0 &
(glVertexAttrib4dNV = GLContext.getFunctionAddress("glVertexAttrib4dNV")) != 0 &
(glVertexAttrib4ubNV = GLContext.getFunctionAddress("glVertexAttrib4ubNV")) != 0 &
(glVertexAttribs1svNV = GLContext.getFunctionAddress("glVertexAttribs1svNV")) != 0 &
(glVertexAttribs1fvNV = GLContext.getFunctionAddress("glVertexAttribs1fvNV")) != 0 &
(glVertexAttribs1dvNV = GLContext.getFunctionAddress("glVertexAttribs1dvNV")) != 0 &
(glVertexAttribs2svNV = GLContext.getFunctionAddress("glVertexAttribs2svNV")) != 0 &
(glVertexAttribs2fvNV = GLContext.getFunctionAddress("glVertexAttribs2fvNV")) != 0 &
(glVertexAttribs2dvNV = GLContext.getFunctionAddress("glVertexAttribs2dvNV")) != 0 &
(glVertexAttribs3svNV = GLContext.getFunctionAddress("glVertexAttribs3svNV")) != 0 &
(glVertexAttribs3fvNV = GLContext.getFunctionAddress("glVertexAttribs3fvNV")) != 0 &
(glVertexAttribs3dvNV = GLContext.getFunctionAddress("glVertexAttribs3dvNV")) != 0 &
(glVertexAttribs4svNV = GLContext.getFunctionAddress("glVertexAttribs4svNV")) != 0 &
(glVertexAttribs4fvNV = GLContext.getFunctionAddress("glVertexAttribs4fvNV")) != 0 &
(glVertexAttribs4dvNV = GLContext.getFunctionAddress("glVertexAttribs4dvNV")) != 0;
}
private static void remove(Set supported_extensions, String extension) {
LWJGLUtil.log(extension + " was reported as available but an entry point is missing");
supported_extensions.remove(extension);
}
private Set<String> initAllStubs(boolean forwardCompatible) throws LWJGLException {
glGetError = GLContext.getFunctionAddress("glGetError");
glGetString = GLContext.getFunctionAddress("glGetString");
glGetIntegerv = GLContext.getFunctionAddress("glGetIntegerv");
glGetStringi = GLContext.getFunctionAddress("glGetStringi");
GLContext.setCapabilities(this);
Set<String> supported_extensions = new HashSet<String>(256);
int profileMask = GLContext.getSupportedExtensions(supported_extensions);
if ( supported_extensions.contains("OpenGL31") && !(supported_extensions.contains("GL_ARB_compatibility") || (profileMask & GL32.GL_CONTEXT_COMPATIBILITY_PROFILE_BIT) != 0) )
forwardCompatible = true;
if (!GL11_initNativeFunctionAddresses(forwardCompatible))
throw new LWJGLException("GL11 not supported");
if (supported_extensions.contains("GL_ARB_fragment_program"))
supported_extensions.add("GL_ARB_program");
if (supported_extensions.contains("GL_ARB_pixel_buffer_object"))
supported_extensions.add("GL_ARB_buffer_object");
if (supported_extensions.contains("GL_ARB_vertex_buffer_object"))
supported_extensions.add("GL_ARB_buffer_object");
if (supported_extensions.contains("GL_ARB_vertex_program"))
supported_extensions.add("GL_ARB_program");
if (supported_extensions.contains("GL_EXT_pixel_buffer_object"))
supported_extensions.add("GL_ARB_buffer_object");
if (supported_extensions.contains("GL_NV_fragment_program"))
supported_extensions.add("GL_NV_program");
if (supported_extensions.contains("GL_NV_vertex_program"))
supported_extensions.add("GL_NV_program");
if ((supported_extensions.contains("GL_AMD_debug_output") || supported_extensions.contains("GL_AMDX_debug_output")) && !AMD_debug_output_initNativeFunctionAddresses()) {
remove(supported_extensions, "GL_AMDX_debug_output");
remove(supported_extensions, "GL_AMD_debug_output");
}
if (supported_extensions.contains("GL_AMD_draw_buffers_blend") && !AMD_draw_buffers_blend_initNativeFunctionAddresses())
remove(supported_extensions, "GL_AMD_draw_buffers_blend");
if (supported_extensions.contains("GL_AMD_name_gen_delete") && !AMD_name_gen_delete_initNativeFunctionAddresses())
remove(supported_extensions, "GL_AMD_name_gen_delete");
if (supported_extensions.contains("GL_AMD_performance_monitor") && !AMD_performance_monitor_initNativeFunctionAddresses())
remove(supported_extensions, "GL_AMD_performance_monitor");
if (supported_extensions.contains("GL_AMD_vertex_shader_tessellator") && !AMD_vertex_shader_tessellator_initNativeFunctionAddresses())
remove(supported_extensions, "GL_AMD_vertex_shader_tessellator");
if (supported_extensions.contains("GL_APPLE_element_array") && !APPLE_element_array_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_element_array");
if (supported_extensions.contains("GL_APPLE_fence") && !APPLE_fence_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_fence");
if (supported_extensions.contains("GL_APPLE_flush_buffer_range") && !APPLE_flush_buffer_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_flush_buffer_range");
if (supported_extensions.contains("GL_APPLE_object_purgeable") && !APPLE_object_purgeable_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_object_purgeable");
if (supported_extensions.contains("GL_APPLE_texture_range") && !APPLE_texture_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_texture_range");
if (supported_extensions.contains("GL_APPLE_vertex_array_object") && !APPLE_vertex_array_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_vertex_array_object");
if (supported_extensions.contains("GL_APPLE_vertex_array_range") && !APPLE_vertex_array_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_vertex_array_range");
if (supported_extensions.contains("GL_APPLE_vertex_program_evaluators") && !APPLE_vertex_program_evaluators_initNativeFunctionAddresses())
remove(supported_extensions, "GL_APPLE_vertex_program_evaluators");
if (supported_extensions.contains("GL_ARB_ES2_compatibility") && !ARB_ES2_compatibility_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_ES2_compatibility");
if (supported_extensions.contains("GL_ARB_blend_func_extended") && !ARB_blend_func_extended_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_blend_func_extended");
if (supported_extensions.contains("GL_ARB_buffer_object") && !ARB_buffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_buffer_object");
if (supported_extensions.contains("GL_ARB_cl_event") && !ARB_cl_event_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_cl_event");
if (supported_extensions.contains("GL_ARB_color_buffer_float") && !ARB_color_buffer_float_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_color_buffer_float");
if (supported_extensions.contains("GL_ARB_copy_buffer") && !ARB_copy_buffer_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_copy_buffer");
if (supported_extensions.contains("GL_ARB_debug_output") && !ARB_debug_output_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_debug_output");
if (supported_extensions.contains("GL_ARB_draw_buffers") && !ARB_draw_buffers_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_draw_buffers");
if (supported_extensions.contains("GL_ARB_draw_buffers_blend") && !ARB_draw_buffers_blend_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_draw_buffers_blend");
if (supported_extensions.contains("GL_ARB_draw_elements_base_vertex") && !ARB_draw_elements_base_vertex_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_draw_elements_base_vertex");
if (supported_extensions.contains("GL_ARB_draw_indirect") && !ARB_draw_indirect_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_draw_indirect");
if (supported_extensions.contains("GL_ARB_draw_instanced") && !ARB_draw_instanced_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_draw_instanced");
if (supported_extensions.contains("GL_ARB_framebuffer_object") && !ARB_framebuffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_framebuffer_object");
if (supported_extensions.contains("GL_ARB_geometry_shader4") && !ARB_geometry_shader4_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_geometry_shader4");
if (supported_extensions.contains("GL_ARB_get_program_binary") && !ARB_get_program_binary_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_get_program_binary");
if (supported_extensions.contains("GL_ARB_gpu_shader_fp64") && !ARB_gpu_shader_fp64_initNativeFunctionAddresses(supported_extensions))
remove(supported_extensions, "GL_ARB_gpu_shader_fp64");
if (supported_extensions.contains("GL_ARB_imaging") && !ARB_imaging_initNativeFunctionAddresses(forwardCompatible))
remove(supported_extensions, "GL_ARB_imaging");
if (supported_extensions.contains("GL_ARB_instanced_arrays") && !ARB_instanced_arrays_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_instanced_arrays");
if (supported_extensions.contains("GL_ARB_map_buffer_range") && !ARB_map_buffer_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_map_buffer_range");
if (supported_extensions.contains("GL_ARB_matrix_palette") && !ARB_matrix_palette_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_matrix_palette");
if (supported_extensions.contains("GL_ARB_multisample") && !ARB_multisample_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_multisample");
if (supported_extensions.contains("GL_ARB_multitexture") && !ARB_multitexture_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_multitexture");
if (supported_extensions.contains("GL_ARB_occlusion_query") && !ARB_occlusion_query_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_occlusion_query");
if (supported_extensions.contains("GL_ARB_point_parameters") && !ARB_point_parameters_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_point_parameters");
if (supported_extensions.contains("GL_ARB_program") && !ARB_program_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_program");
if (supported_extensions.contains("GL_ARB_provoking_vertex") && !ARB_provoking_vertex_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_provoking_vertex");
if (supported_extensions.contains("GL_ARB_robustness") && !ARB_robustness_initNativeFunctionAddresses(forwardCompatible,supported_extensions))
remove(supported_extensions, "GL_ARB_robustness");
if (supported_extensions.contains("GL_ARB_sample_shading") && !ARB_sample_shading_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_sample_shading");
if (supported_extensions.contains("GL_ARB_sampler_objects") && !ARB_sampler_objects_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_sampler_objects");
if (supported_extensions.contains("GL_ARB_separate_shader_objects") && !ARB_separate_shader_objects_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_separate_shader_objects");
if (supported_extensions.contains("GL_ARB_shader_objects") && !ARB_shader_objects_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_shader_objects");
if (supported_extensions.contains("GL_ARB_shader_subroutine") && !ARB_shader_subroutine_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_shader_subroutine");
if (supported_extensions.contains("GL_ARB_shading_language_include") && !ARB_shading_language_include_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_shading_language_include");
if (supported_extensions.contains("GL_ARB_sync") && !ARB_sync_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_sync");
if (supported_extensions.contains("GL_ARB_tessellation_shader") && !ARB_tessellation_shader_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_tessellation_shader");
if (supported_extensions.contains("GL_ARB_texture_buffer_object") && !ARB_texture_buffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_texture_buffer_object");
if (supported_extensions.contains("GL_ARB_texture_compression") && !ARB_texture_compression_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_texture_compression");
if (supported_extensions.contains("GL_ARB_texture_multisample") && !ARB_texture_multisample_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_texture_multisample");
if (supported_extensions.contains("GL_ARB_timer_query") && !ARB_timer_query_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_timer_query");
if (supported_extensions.contains("GL_ARB_transform_feedback2") && !ARB_transform_feedback2_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_transform_feedback2");
if (supported_extensions.contains("GL_ARB_transform_feedback3") && !ARB_transform_feedback3_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_transform_feedback3");
if (supported_extensions.contains("GL_ARB_transpose_matrix") && !ARB_transpose_matrix_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_transpose_matrix");
if (supported_extensions.contains("GL_ARB_uniform_buffer_object") && !ARB_uniform_buffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_uniform_buffer_object");
if (supported_extensions.contains("GL_ARB_vertex_array_object") && !ARB_vertex_array_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_vertex_array_object");
if (supported_extensions.contains("GL_ARB_vertex_attrib_64bit") && !ARB_vertex_attrib_64bit_initNativeFunctionAddresses(supported_extensions))
remove(supported_extensions, "GL_ARB_vertex_attrib_64bit");
if (supported_extensions.contains("GL_ARB_vertex_blend") && !ARB_vertex_blend_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_vertex_blend");
if (supported_extensions.contains("GL_ARB_vertex_program") && !ARB_vertex_program_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_vertex_program");
if (supported_extensions.contains("GL_ARB_vertex_shader") && !ARB_vertex_shader_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_vertex_shader");
if (supported_extensions.contains("GL_ARB_vertex_type_2_10_10_10_rev") && !ARB_vertex_type_2_10_10_10_rev_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_vertex_type_2_10_10_10_rev");
if (supported_extensions.contains("GL_ARB_viewport_array") && !ARB_viewport_array_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ARB_viewport_array");
if (supported_extensions.contains("GL_ARB_window_pos") && !ARB_window_pos_initNativeFunctionAddresses(forwardCompatible))
remove(supported_extensions, "GL_ARB_window_pos");
if (supported_extensions.contains("GL_ATI_draw_buffers") && !ATI_draw_buffers_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_draw_buffers");
if (supported_extensions.contains("GL_ATI_element_array") && !ATI_element_array_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_element_array");
if (supported_extensions.contains("GL_ATI_envmap_bumpmap") && !ATI_envmap_bumpmap_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_envmap_bumpmap");
if (supported_extensions.contains("GL_ATI_fragment_shader") && !ATI_fragment_shader_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_fragment_shader");
if (supported_extensions.contains("GL_ATI_map_object_buffer") && !ATI_map_object_buffer_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_map_object_buffer");
if (supported_extensions.contains("GL_ATI_pn_triangles") && !ATI_pn_triangles_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_pn_triangles");
if (supported_extensions.contains("GL_ATI_separate_stencil") && !ATI_separate_stencil_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_separate_stencil");
if (supported_extensions.contains("GL_ATI_vertex_array_object") && !ATI_vertex_array_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_vertex_array_object");
if (supported_extensions.contains("GL_ATI_vertex_attrib_array_object") && !ATI_vertex_attrib_array_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_vertex_attrib_array_object");
if (supported_extensions.contains("GL_ATI_vertex_streams") && !ATI_vertex_streams_initNativeFunctionAddresses())
remove(supported_extensions, "GL_ATI_vertex_streams");
if (supported_extensions.contains("GL_EXT_bindable_uniform") && !EXT_bindable_uniform_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_bindable_uniform");
if (supported_extensions.contains("GL_EXT_blend_color") && !EXT_blend_color_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_blend_color");
if (supported_extensions.contains("GL_EXT_blend_equation_separate") && !EXT_blend_equation_separate_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_blend_equation_separate");
if (supported_extensions.contains("GL_EXT_blend_func_separate") && !EXT_blend_func_separate_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_blend_func_separate");
if (supported_extensions.contains("GL_EXT_blend_minmax") && !EXT_blend_minmax_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_blend_minmax");
if (supported_extensions.contains("GL_EXT_compiled_vertex_array") && !EXT_compiled_vertex_array_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_compiled_vertex_array");
if (supported_extensions.contains("GL_EXT_depth_bounds_test") && !EXT_depth_bounds_test_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_depth_bounds_test");
supported_extensions.add("GL_EXT_direct_state_access");
if (supported_extensions.contains("GL_EXT_direct_state_access") && !EXT_direct_state_access_initNativeFunctionAddresses(forwardCompatible,supported_extensions))
remove(supported_extensions, "GL_EXT_direct_state_access");
if (supported_extensions.contains("GL_EXT_draw_buffers2") && !EXT_draw_buffers2_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_draw_buffers2");
if (supported_extensions.contains("GL_EXT_draw_instanced") && !EXT_draw_instanced_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_draw_instanced");
if (supported_extensions.contains("GL_EXT_draw_range_elements") && !EXT_draw_range_elements_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_draw_range_elements");
if (supported_extensions.contains("GL_EXT_fog_coord") && !EXT_fog_coord_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_fog_coord");
if (supported_extensions.contains("GL_EXT_framebuffer_blit") && !EXT_framebuffer_blit_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_framebuffer_blit");
if (supported_extensions.contains("GL_EXT_framebuffer_multisample") && !EXT_framebuffer_multisample_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_framebuffer_multisample");
if (supported_extensions.contains("GL_EXT_framebuffer_object") && !EXT_framebuffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_framebuffer_object");
if (supported_extensions.contains("GL_EXT_geometry_shader4") && !EXT_geometry_shader4_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_geometry_shader4");
if (supported_extensions.contains("GL_EXT_gpu_program_parameters") && !EXT_gpu_program_parameters_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_gpu_program_parameters");
if (supported_extensions.contains("GL_EXT_gpu_shader4") && !EXT_gpu_shader4_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_gpu_shader4");
if (supported_extensions.contains("GL_EXT_multi_draw_arrays") && !EXT_multi_draw_arrays_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_multi_draw_arrays");
if (supported_extensions.contains("GL_EXT_paletted_texture") && !EXT_paletted_texture_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_paletted_texture");
if (supported_extensions.contains("GL_EXT_point_parameters") && !EXT_point_parameters_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_point_parameters");
if (supported_extensions.contains("GL_EXT_provoking_vertex") && !EXT_provoking_vertex_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_provoking_vertex");
if (supported_extensions.contains("GL_EXT_secondary_color") && !EXT_secondary_color_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_secondary_color");
if (supported_extensions.contains("GL_EXT_separate_shader_objects") && !EXT_separate_shader_objects_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_separate_shader_objects");
if (supported_extensions.contains("GL_EXT_shader_image_load_store") && !EXT_shader_image_load_store_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_shader_image_load_store");
if (supported_extensions.contains("GL_EXT_stencil_clear_tag") && !EXT_stencil_clear_tag_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_stencil_clear_tag");
if (supported_extensions.contains("GL_EXT_stencil_two_side") && !EXT_stencil_two_side_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_stencil_two_side");
if (supported_extensions.contains("GL_EXT_texture_array") && !EXT_texture_array_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_texture_array");
if (supported_extensions.contains("GL_EXT_texture_buffer_object") && !EXT_texture_buffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_texture_buffer_object");
if (supported_extensions.contains("GL_EXT_texture_integer") && !EXT_texture_integer_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_texture_integer");
if (supported_extensions.contains("GL_EXT_timer_query") && !EXT_timer_query_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_timer_query");
if (supported_extensions.contains("GL_EXT_transform_feedback") && !EXT_transform_feedback_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_transform_feedback");
if (supported_extensions.contains("GL_EXT_vertex_attrib_64bit") && !EXT_vertex_attrib_64bit_initNativeFunctionAddresses(supported_extensions))
remove(supported_extensions, "GL_EXT_vertex_attrib_64bit");
if (supported_extensions.contains("GL_EXT_vertex_shader") && !EXT_vertex_shader_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_vertex_shader");
if (supported_extensions.contains("GL_EXT_vertex_weighting") && !EXT_vertex_weighting_initNativeFunctionAddresses())
remove(supported_extensions, "GL_EXT_vertex_weighting");
if (supported_extensions.contains("OpenGL12") && !GL12_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL12");
if (supported_extensions.contains("OpenGL13") && !GL13_initNativeFunctionAddresses(forwardCompatible))
remove(supported_extensions, "OpenGL13");
if (supported_extensions.contains("OpenGL14") && !GL14_initNativeFunctionAddresses(forwardCompatible))
remove(supported_extensions, "OpenGL14");
if (supported_extensions.contains("OpenGL15") && !GL15_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL15");
if (supported_extensions.contains("OpenGL20") && !GL20_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL20");
if (supported_extensions.contains("OpenGL21") && !GL21_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL21");
if (supported_extensions.contains("OpenGL30") && !GL30_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL30");
if (supported_extensions.contains("OpenGL31") && !GL31_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL31");
if (supported_extensions.contains("OpenGL32") && !GL32_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL32");
if (supported_extensions.contains("OpenGL33") && !GL33_initNativeFunctionAddresses(forwardCompatible))
remove(supported_extensions, "OpenGL33");
if (supported_extensions.contains("OpenGL40") && !GL40_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL40");
if (supported_extensions.contains("OpenGL41") && !GL41_initNativeFunctionAddresses())
remove(supported_extensions, "OpenGL41");
if (supported_extensions.contains("GL_GREMEDY_string_marker") && !GREMEDY_string_marker_initNativeFunctionAddresses())
remove(supported_extensions, "GL_GREMEDY_string_marker");
if (supported_extensions.contains("GL_NV_conditional_render") && !NV_conditional_render_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_conditional_render");
if (supported_extensions.contains("GL_NV_copy_image") && !NV_copy_image_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_copy_image");
if (supported_extensions.contains("GL_NV_depth_buffer_float") && !NV_depth_buffer_float_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_depth_buffer_float");
if (supported_extensions.contains("GL_NV_evaluators") && !NV_evaluators_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_evaluators");
if (supported_extensions.contains("GL_NV_explicit_multisample") && !NV_explicit_multisample_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_explicit_multisample");
if (supported_extensions.contains("GL_NV_fence") && !NV_fence_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_fence");
if (supported_extensions.contains("GL_NV_fragment_program") && !NV_fragment_program_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_fragment_program");
if (supported_extensions.contains("GL_NV_framebuffer_multisample_coverage") && !NV_framebuffer_multisample_coverage_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_framebuffer_multisample_coverage");
if (supported_extensions.contains("GL_NV_geometry_program4") && !NV_geometry_program4_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_geometry_program4");
if (supported_extensions.contains("GL_NV_gpu_program4") && !NV_gpu_program4_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_gpu_program4");
if (supported_extensions.contains("GL_NV_gpu_shader5") && !NV_gpu_shader5_initNativeFunctionAddresses(supported_extensions))
remove(supported_extensions, "GL_NV_gpu_shader5");
if (supported_extensions.contains("GL_NV_half_float") && !NV_half_float_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_half_float");
if (supported_extensions.contains("GL_NV_occlusion_query") && !NV_occlusion_query_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_occlusion_query");
if (supported_extensions.contains("GL_NV_parameter_buffer_object") && !NV_parameter_buffer_object_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_parameter_buffer_object");
if (supported_extensions.contains("GL_NV_pixel_data_range") && !NV_pixel_data_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_pixel_data_range");
if (supported_extensions.contains("GL_NV_point_sprite") && !NV_point_sprite_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_point_sprite");
supported_extensions.add("GL_NV_primitive_restart");
if (supported_extensions.contains("GL_NV_primitive_restart") && !NV_primitive_restart_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_primitive_restart");
if (supported_extensions.contains("GL_NV_program") && !NV_program_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_program");
if (supported_extensions.contains("GL_NV_register_combiners") && !NV_register_combiners_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_register_combiners");
if (supported_extensions.contains("GL_NV_register_combiners2") && !NV_register_combiners2_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_register_combiners2");
if (supported_extensions.contains("GL_NV_shader_buffer_load") && !NV_shader_buffer_load_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_shader_buffer_load");
if (supported_extensions.contains("GL_NV_texture_barrier") && !NV_texture_barrier_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_texture_barrier");
if (supported_extensions.contains("GL_NV_transform_feedback") && !NV_transform_feedback_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_transform_feedback");
if (supported_extensions.contains("GL_NV_transform_feedback2") && !NV_transform_feedback2_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_transform_feedback2");
if (supported_extensions.contains("GL_NV_vertex_array_range") && !NV_vertex_array_range_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_vertex_array_range");
if (supported_extensions.contains("GL_NV_vertex_attrib_integer_64bit") && !NV_vertex_attrib_integer_64bit_initNativeFunctionAddresses(supported_extensions))
remove(supported_extensions, "GL_NV_vertex_attrib_integer_64bit");
if (supported_extensions.contains("GL_NV_vertex_buffer_unified_memory") && !NV_vertex_buffer_unified_memory_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_vertex_buffer_unified_memory");
if (supported_extensions.contains("GL_NV_vertex_program") && !NV_vertex_program_initNativeFunctionAddresses())
remove(supported_extensions, "GL_NV_vertex_program");
return supported_extensions;
}
static void unloadAllStubs() {
}
ContextCapabilities(boolean forwardCompatible) throws LWJGLException {
Set<String> supported_extensions = initAllStubs(forwardCompatible);
this.GL_AMD_conservative_depth = supported_extensions.contains("GL_AMD_conservative_depth");
this.GL_AMD_debug_output = supported_extensions.contains("GL_AMD_debug_output")
|| supported_extensions.contains("GL_AMDX_debug_output");
this.GL_AMD_depth_clamp_separate = supported_extensions.contains("GL_AMD_depth_clamp_separate");
this.GL_AMD_draw_buffers_blend = supported_extensions.contains("GL_AMD_draw_buffers_blend");
this.GL_AMD_name_gen_delete = supported_extensions.contains("GL_AMD_name_gen_delete");
this.GL_AMD_performance_monitor = supported_extensions.contains("GL_AMD_performance_monitor");
this.GL_AMD_seamless_cubemap_per_texture = supported_extensions.contains("GL_AMD_seamless_cubemap_per_texture");
this.GL_AMD_shader_stencil_export = supported_extensions.contains("GL_AMD_shader_stencil_export");
this.GL_AMD_texture_texture4 = supported_extensions.contains("GL_AMD_texture_texture4");
this.GL_AMD_transform_feedback3_lines_triangles = supported_extensions.contains("GL_AMD_transform_feedback3_lines_triangles");
this.GL_AMD_vertex_shader_tessellator = supported_extensions.contains("GL_AMD_vertex_shader_tessellator");
this.GL_APPLE_aux_depth_stencil = supported_extensions.contains("GL_APPLE_aux_depth_stencil");
this.GL_APPLE_client_storage = supported_extensions.contains("GL_APPLE_client_storage");
this.GL_APPLE_element_array = supported_extensions.contains("GL_APPLE_element_array");
this.GL_APPLE_fence = supported_extensions.contains("GL_APPLE_fence");
this.GL_APPLE_float_pixels = supported_extensions.contains("GL_APPLE_float_pixels");
this.GL_APPLE_flush_buffer_range = supported_extensions.contains("GL_APPLE_flush_buffer_range");
this.GL_APPLE_object_purgeable = supported_extensions.contains("GL_APPLE_object_purgeable");
this.GL_APPLE_packed_pixels = supported_extensions.contains("GL_APPLE_packed_pixels");
this.GL_APPLE_rgb_422 = supported_extensions.contains("GL_APPLE_rgb_422");
this.GL_APPLE_row_bytes = supported_extensions.contains("GL_APPLE_row_bytes");
this.GL_APPLE_texture_range = supported_extensions.contains("GL_APPLE_texture_range");
this.GL_APPLE_vertex_array_object = supported_extensions.contains("GL_APPLE_vertex_array_object");
this.GL_APPLE_vertex_array_range = supported_extensions.contains("GL_APPLE_vertex_array_range");
this.GL_APPLE_vertex_program_evaluators = supported_extensions.contains("GL_APPLE_vertex_program_evaluators");
this.GL_APPLE_ycbcr_422 = supported_extensions.contains("GL_APPLE_ycbcr_422");
this.GL_ARB_ES2_compatibility = supported_extensions.contains("GL_ARB_ES2_compatibility");
this.GL_ARB_blend_func_extended = supported_extensions.contains("GL_ARB_blend_func_extended");
this.GL_ARB_cl_event = supported_extensions.contains("GL_ARB_cl_event");
this.GL_ARB_color_buffer_float = supported_extensions.contains("GL_ARB_color_buffer_float");
this.GL_ARB_compatibility = supported_extensions.contains("GL_ARB_compatibility");
this.GL_ARB_copy_buffer = supported_extensions.contains("GL_ARB_copy_buffer");
this.GL_ARB_debug_output = supported_extensions.contains("GL_ARB_debug_output");
this.GL_ARB_depth_buffer_float = supported_extensions.contains("GL_ARB_depth_buffer_float");
this.GL_ARB_depth_clamp = supported_extensions.contains("GL_ARB_depth_clamp");
this.GL_ARB_depth_texture = supported_extensions.contains("GL_ARB_depth_texture");
this.GL_ARB_draw_buffers = supported_extensions.contains("GL_ARB_draw_buffers");
this.GL_ARB_draw_buffers_blend = supported_extensions.contains("GL_ARB_draw_buffers_blend");
this.GL_ARB_draw_elements_base_vertex = supported_extensions.contains("GL_ARB_draw_elements_base_vertex");
this.GL_ARB_draw_indirect = supported_extensions.contains("GL_ARB_draw_indirect");
this.GL_ARB_draw_instanced = supported_extensions.contains("GL_ARB_draw_instanced");
this.GL_ARB_explicit_attrib_location = supported_extensions.contains("GL_ARB_explicit_attrib_location");
this.GL_ARB_fragment_coord_conventions = supported_extensions.contains("GL_ARB_fragment_coord_conventions");
this.GL_ARB_fragment_program = supported_extensions.contains("GL_ARB_fragment_program")
&& supported_extensions.contains("GL_ARB_program");
this.GL_ARB_fragment_program_shadow = supported_extensions.contains("GL_ARB_fragment_program_shadow");
this.GL_ARB_fragment_shader = supported_extensions.contains("GL_ARB_fragment_shader");
this.GL_ARB_framebuffer_object = supported_extensions.contains("GL_ARB_framebuffer_object");
this.GL_ARB_framebuffer_sRGB = supported_extensions.contains("GL_ARB_framebuffer_sRGB");
this.GL_ARB_geometry_shader4 = supported_extensions.contains("GL_ARB_geometry_shader4");
this.GL_ARB_get_program_binary = supported_extensions.contains("GL_ARB_get_program_binary");
this.GL_ARB_gpu_shader5 = supported_extensions.contains("GL_ARB_gpu_shader5");
this.GL_ARB_gpu_shader_fp64 = supported_extensions.contains("GL_ARB_gpu_shader_fp64");
this.GL_ARB_half_float_pixel = supported_extensions.contains("GL_ARB_half_float_pixel");
this.GL_ARB_half_float_vertex = supported_extensions.contains("GL_ARB_half_float_vertex");
this.GL_ARB_imaging = supported_extensions.contains("GL_ARB_imaging");
this.GL_ARB_instanced_arrays = supported_extensions.contains("GL_ARB_instanced_arrays");
this.GL_ARB_map_buffer_range = supported_extensions.contains("GL_ARB_map_buffer_range");
this.GL_ARB_matrix_palette = supported_extensions.contains("GL_ARB_matrix_palette");
this.GL_ARB_multisample = supported_extensions.contains("GL_ARB_multisample");
this.GL_ARB_multitexture = supported_extensions.contains("GL_ARB_multitexture");
this.GL_ARB_occlusion_query = supported_extensions.contains("GL_ARB_occlusion_query");
this.GL_ARB_occlusion_query2 = supported_extensions.contains("GL_ARB_occlusion_query2");
this.GL_ARB_pixel_buffer_object = supported_extensions.contains("GL_ARB_pixel_buffer_object")
&& supported_extensions.contains("GL_ARB_buffer_object");
this.GL_ARB_point_parameters = supported_extensions.contains("GL_ARB_point_parameters");
this.GL_ARB_point_sprite = supported_extensions.contains("GL_ARB_point_sprite");
this.GL_ARB_provoking_vertex = supported_extensions.contains("GL_ARB_provoking_vertex");
this.GL_ARB_robustness = supported_extensions.contains("GL_ARB_robustness");
this.GL_ARB_sample_shading = supported_extensions.contains("GL_ARB_sample_shading");
this.GL_ARB_sampler_objects = supported_extensions.contains("GL_ARB_sampler_objects");
this.GL_ARB_seamless_cube_map = supported_extensions.contains("GL_ARB_seamless_cube_map");
this.GL_ARB_separate_shader_objects = supported_extensions.contains("GL_ARB_separate_shader_objects");
this.GL_ARB_shader_bit_encoding = supported_extensions.contains("GL_ARB_shader_bit_encoding");
this.GL_ARB_shader_objects = supported_extensions.contains("GL_ARB_shader_objects");
this.GL_ARB_shader_precision = supported_extensions.contains("GL_ARB_shader_precision");
this.GL_ARB_shader_stencil_export = supported_extensions.contains("GL_ARB_shader_stencil_export");
this.GL_ARB_shader_subroutine = supported_extensions.contains("GL_ARB_shader_subroutine");
this.GL_ARB_shader_texture_lod = supported_extensions.contains("GL_ARB_shader_texture_lod");
this.GL_ARB_shading_language_100 = supported_extensions.contains("GL_ARB_shading_language_100");
this.GL_ARB_shading_language_include = supported_extensions.contains("GL_ARB_shading_language_include");
this.GL_ARB_shadow = supported_extensions.contains("GL_ARB_shadow");
this.GL_ARB_shadow_ambient = supported_extensions.contains("GL_ARB_shadow_ambient");
this.GL_ARB_sync = supported_extensions.contains("GL_ARB_sync");
this.GL_ARB_tessellation_shader = supported_extensions.contains("GL_ARB_tessellation_shader");
this.GL_ARB_texture_border_clamp = supported_extensions.contains("GL_ARB_texture_border_clamp");
this.GL_ARB_texture_buffer_object = supported_extensions.contains("GL_ARB_texture_buffer_object");
this.GL_ARB_texture_buffer_object_rgb32 = supported_extensions.contains("GL_ARB_texture_buffer_object_rgb32")
|| supported_extensions.contains("GL_EXT_texture_buffer_object_rgb32");
this.GL_ARB_texture_compression = supported_extensions.contains("GL_ARB_texture_compression");
this.GL_ARB_texture_compression_bptc = supported_extensions.contains("GL_ARB_texture_compression_bptc")
|| supported_extensions.contains("GL_EXT_texture_compression_bptc");
this.GL_ARB_texture_compression_rgtc = supported_extensions.contains("GL_ARB_texture_compression_rgtc");
this.GL_ARB_texture_cube_map = supported_extensions.contains("GL_ARB_texture_cube_map");
this.GL_ARB_texture_cube_map_array = supported_extensions.contains("GL_ARB_texture_cube_map_array");
this.GL_ARB_texture_env_add = supported_extensions.contains("GL_ARB_texture_env_add");
this.GL_ARB_texture_env_combine = supported_extensions.contains("GL_ARB_texture_env_combine");
this.GL_ARB_texture_env_crossbar = supported_extensions.contains("GL_ARB_texture_env_crossbar");
this.GL_ARB_texture_env_dot3 = supported_extensions.contains("GL_ARB_texture_env_dot3");
this.GL_ARB_texture_float = supported_extensions.contains("GL_ARB_texture_float");
this.GL_ARB_texture_gather = supported_extensions.contains("GL_ARB_texture_gather");
this.GL_ARB_texture_mirrored_repeat = supported_extensions.contains("GL_ARB_texture_mirrored_repeat");
this.GL_ARB_texture_multisample = supported_extensions.contains("GL_ARB_texture_multisample");
this.GL_ARB_texture_non_power_of_two = supported_extensions.contains("GL_ARB_texture_non_power_of_two");
this.GL_ARB_texture_query_lod = supported_extensions.contains("GL_ARB_texture_query_lod");
this.GL_ARB_texture_rectangle = supported_extensions.contains("GL_ARB_texture_rectangle");
this.GL_ARB_texture_rg = supported_extensions.contains("GL_ARB_texture_rg");
this.GL_ARB_texture_rgb10_a2ui = supported_extensions.contains("GL_ARB_texture_rgb10_a2ui");
this.GL_ARB_texture_swizzle = supported_extensions.contains("GL_ARB_texture_swizzle");
this.GL_ARB_timer_query = supported_extensions.contains("GL_ARB_timer_query");
this.GL_ARB_transform_feedback2 = supported_extensions.contains("GL_ARB_transform_feedback2");
this.GL_ARB_transform_feedback3 = supported_extensions.contains("GL_ARB_transform_feedback3");
this.GL_ARB_transpose_matrix = supported_extensions.contains("GL_ARB_transpose_matrix");
this.GL_ARB_uniform_buffer_object = supported_extensions.contains("GL_ARB_uniform_buffer_object");
this.GL_ARB_vertex_array_bgra = supported_extensions.contains("GL_ARB_vertex_array_bgra");
this.GL_ARB_vertex_array_object = supported_extensions.contains("GL_ARB_vertex_array_object");
this.GL_ARB_vertex_attrib_64bit = supported_extensions.contains("GL_ARB_vertex_attrib_64bit");
this.GL_ARB_vertex_blend = supported_extensions.contains("GL_ARB_vertex_blend");
this.GL_ARB_vertex_buffer_object = supported_extensions.contains("GL_ARB_vertex_buffer_object")
&& supported_extensions.contains("GL_ARB_buffer_object");
this.GL_ARB_vertex_program = supported_extensions.contains("GL_ARB_vertex_program")
&& supported_extensions.contains("GL_ARB_program");
this.GL_ARB_vertex_shader = supported_extensions.contains("GL_ARB_vertex_shader");
this.GL_ARB_vertex_type_2_10_10_10_rev = supported_extensions.contains("GL_ARB_vertex_type_2_10_10_10_rev");
this.GL_ARB_viewport_array = supported_extensions.contains("GL_ARB_viewport_array");
this.GL_ARB_window_pos = supported_extensions.contains("GL_ARB_window_pos");
this.GL_ATI_draw_buffers = supported_extensions.contains("GL_ATI_draw_buffers");
this.GL_ATI_element_array = supported_extensions.contains("GL_ATI_element_array");
this.GL_ATI_envmap_bumpmap = supported_extensions.contains("GL_ATI_envmap_bumpmap");
this.GL_ATI_fragment_shader = supported_extensions.contains("GL_ATI_fragment_shader");
this.GL_ATI_map_object_buffer = supported_extensions.contains("GL_ATI_map_object_buffer");
this.GL_ATI_meminfo = supported_extensions.contains("GL_ATI_meminfo");
this.GL_ATI_pn_triangles = supported_extensions.contains("GL_ATI_pn_triangles");
this.GL_ATI_separate_stencil = supported_extensions.contains("GL_ATI_separate_stencil");
this.GL_ATI_shader_texture_lod = supported_extensions.contains("GL_ATI_shader_texture_lod");
this.GL_ATI_text_fragment_shader = supported_extensions.contains("GL_ATI_text_fragment_shader");
this.GL_ATI_texture_compression_3dc = supported_extensions.contains("GL_ATI_texture_compression_3dc");
this.GL_ATI_texture_env_combine3 = supported_extensions.contains("GL_ATI_texture_env_combine3");
this.GL_ATI_texture_float = supported_extensions.contains("GL_ATI_texture_float");
this.GL_ATI_texture_mirror_once = supported_extensions.contains("GL_ATI_texture_mirror_once");
this.GL_ATI_vertex_array_object = supported_extensions.contains("GL_ATI_vertex_array_object");
this.GL_ATI_vertex_attrib_array_object = supported_extensions.contains("GL_ATI_vertex_attrib_array_object");
this.GL_ATI_vertex_streams = supported_extensions.contains("GL_ATI_vertex_streams");
this.GL_EXT_abgr = supported_extensions.contains("GL_EXT_abgr");
this.GL_EXT_bgra = supported_extensions.contains("GL_EXT_bgra");
this.GL_EXT_bindable_uniform = supported_extensions.contains("GL_EXT_bindable_uniform");
this.GL_EXT_blend_color = supported_extensions.contains("GL_EXT_blend_color");
this.GL_EXT_blend_equation_separate = supported_extensions.contains("GL_EXT_blend_equation_separate");
this.GL_EXT_blend_func_separate = supported_extensions.contains("GL_EXT_blend_func_separate");
this.GL_EXT_blend_minmax = supported_extensions.contains("GL_EXT_blend_minmax");
this.GL_EXT_blend_subtract = supported_extensions.contains("GL_EXT_blend_subtract");
this.GL_EXT_Cg_shader = supported_extensions.contains("GL_EXT_Cg_shader");
this.GL_EXT_compiled_vertex_array = supported_extensions.contains("GL_EXT_compiled_vertex_array");
this.GL_EXT_depth_bounds_test = supported_extensions.contains("GL_EXT_depth_bounds_test");
this.GL_EXT_direct_state_access = supported_extensions.contains("GL_EXT_direct_state_access");
this.GL_EXT_draw_buffers2 = supported_extensions.contains("GL_EXT_draw_buffers2");
this.GL_EXT_draw_instanced = supported_extensions.contains("GL_EXT_draw_instanced");
this.GL_EXT_draw_range_elements = supported_extensions.contains("GL_EXT_draw_range_elements");
this.GL_EXT_fog_coord = supported_extensions.contains("GL_EXT_fog_coord");
this.GL_EXT_framebuffer_blit = supported_extensions.contains("GL_EXT_framebuffer_blit");
this.GL_EXT_framebuffer_multisample = supported_extensions.contains("GL_EXT_framebuffer_multisample");
this.GL_EXT_framebuffer_object = supported_extensions.contains("GL_EXT_framebuffer_object");
this.GL_EXT_framebuffer_sRGB = supported_extensions.contains("GL_EXT_framebuffer_sRGB");
this.GL_EXT_geometry_shader4 = supported_extensions.contains("GL_EXT_geometry_shader4");
this.GL_EXT_gpu_program_parameters = supported_extensions.contains("GL_EXT_gpu_program_parameters");
this.GL_EXT_gpu_shader4 = supported_extensions.contains("GL_EXT_gpu_shader4");
this.GL_EXT_multi_draw_arrays = supported_extensions.contains("GL_EXT_multi_draw_arrays");
this.GL_EXT_packed_depth_stencil = supported_extensions.contains("GL_EXT_packed_depth_stencil");
this.GL_EXT_packed_float = supported_extensions.contains("GL_EXT_packed_float");
this.GL_EXT_packed_pixels = supported_extensions.contains("GL_EXT_packed_pixels");
this.GL_EXT_paletted_texture = supported_extensions.contains("GL_EXT_paletted_texture");
this.GL_EXT_pixel_buffer_object = supported_extensions.contains("GL_EXT_pixel_buffer_object")
&& supported_extensions.contains("GL_ARB_buffer_object");
this.GL_EXT_point_parameters = supported_extensions.contains("GL_EXT_point_parameters");
this.GL_EXT_provoking_vertex = supported_extensions.contains("GL_EXT_provoking_vertex");
this.GL_EXT_rescale_normal = supported_extensions.contains("GL_EXT_rescale_normal");
this.GL_EXT_secondary_color = supported_extensions.contains("GL_EXT_secondary_color");
this.GL_EXT_separate_shader_objects = supported_extensions.contains("GL_EXT_separate_shader_objects");
this.GL_EXT_separate_specular_color = supported_extensions.contains("GL_EXT_separate_specular_color");
this.GL_EXT_shader_image_load_store = supported_extensions.contains("GL_EXT_shader_image_load_store");
this.GL_EXT_shadow_funcs = supported_extensions.contains("GL_EXT_shadow_funcs");
this.GL_EXT_shared_texture_palette = supported_extensions.contains("GL_EXT_shared_texture_palette");
this.GL_EXT_stencil_clear_tag = supported_extensions.contains("GL_EXT_stencil_clear_tag");
this.GL_EXT_stencil_two_side = supported_extensions.contains("GL_EXT_stencil_two_side");
this.GL_EXT_stencil_wrap = supported_extensions.contains("GL_EXT_stencil_wrap");
this.GL_EXT_texture_3d = supported_extensions.contains("GL_EXT_texture_3d");
this.GL_EXT_texture_array = supported_extensions.contains("GL_EXT_texture_array");
this.GL_EXT_texture_buffer_object = supported_extensions.contains("GL_EXT_texture_buffer_object");
this.GL_EXT_texture_compression_latc = supported_extensions.contains("GL_EXT_texture_compression_latc");
this.GL_EXT_texture_compression_rgtc = supported_extensions.contains("GL_EXT_texture_compression_rgtc");
this.GL_EXT_texture_compression_s3tc = supported_extensions.contains("GL_EXT_texture_compression_s3tc");
this.GL_EXT_texture_env_combine = supported_extensions.contains("GL_EXT_texture_env_combine");
this.GL_EXT_texture_env_dot3 = supported_extensions.contains("GL_EXT_texture_env_dot3");
this.GL_EXT_texture_filter_anisotropic = supported_extensions.contains("GL_EXT_texture_filter_anisotropic");
this.GL_EXT_texture_integer = supported_extensions.contains("GL_EXT_texture_integer");
this.GL_EXT_texture_lod_bias = supported_extensions.contains("GL_EXT_texture_lod_bias");
this.GL_EXT_texture_mirror_clamp = supported_extensions.contains("GL_EXT_texture_mirror_clamp");
this.GL_EXT_texture_rectangle = supported_extensions.contains("GL_EXT_texture_rectangle");
this.GL_EXT_texture_sRGB = supported_extensions.contains("GL_EXT_texture_sRGB");
this.GL_EXT_texture_sRGB_decode = supported_extensions.contains("GL_EXT_texture_sRGB_decode");
this.GL_EXT_texture_shared_exponent = supported_extensions.contains("GL_EXT_texture_shared_exponent");
this.GL_EXT_texture_snorm = supported_extensions.contains("GL_EXT_texture_snorm");
this.GL_EXT_texture_swizzle = supported_extensions.contains("GL_EXT_texture_swizzle");
this.GL_EXT_timer_query = supported_extensions.contains("GL_EXT_timer_query");
this.GL_EXT_transform_feedback = supported_extensions.contains("GL_EXT_transform_feedback");
this.GL_EXT_vertex_array_bgra = supported_extensions.contains("GL_EXT_vertex_array_bgra");
this.GL_EXT_vertex_attrib_64bit = supported_extensions.contains("GL_EXT_vertex_attrib_64bit");
this.GL_EXT_vertex_shader = supported_extensions.contains("GL_EXT_vertex_shader");
this.GL_EXT_vertex_weighting = supported_extensions.contains("GL_EXT_vertex_weighting");
this.OpenGL11 = supported_extensions.contains("OpenGL11");
this.OpenGL12 = supported_extensions.contains("OpenGL12");
this.OpenGL13 = supported_extensions.contains("OpenGL13");
this.OpenGL14 = supported_extensions.contains("OpenGL14");
this.OpenGL15 = supported_extensions.contains("OpenGL15");
this.OpenGL20 = supported_extensions.contains("OpenGL20");
this.OpenGL21 = supported_extensions.contains("OpenGL21");
this.OpenGL30 = supported_extensions.contains("OpenGL30");
this.OpenGL31 = supported_extensions.contains("OpenGL31");
this.OpenGL32 = supported_extensions.contains("OpenGL32");
this.OpenGL33 = supported_extensions.contains("OpenGL33");
this.OpenGL40 = supported_extensions.contains("OpenGL40");
this.OpenGL41 = supported_extensions.contains("OpenGL41");
this.GL_GREMEDY_string_marker = supported_extensions.contains("GL_GREMEDY_string_marker");
this.GL_HP_occlusion_test = supported_extensions.contains("GL_HP_occlusion_test");
this.GL_IBM_rasterpos_clip = supported_extensions.contains("GL_IBM_rasterpos_clip");
this.GL_NVX_gpu_memory_info = supported_extensions.contains("GL_NVX_gpu_memory_info");
this.GL_NV_blend_square = supported_extensions.contains("GL_NV_blend_square");
this.GL_NV_conditional_render = supported_extensions.contains("GL_NV_conditional_render");
this.GL_NV_copy_depth_to_color = supported_extensions.contains("GL_NV_copy_depth_to_color");
this.GL_NV_copy_image = supported_extensions.contains("GL_NV_copy_image");
this.GL_NV_depth_buffer_float = supported_extensions.contains("GL_NV_depth_buffer_float");
this.GL_NV_depth_clamp = supported_extensions.contains("GL_NV_depth_clamp");
this.GL_NV_evaluators = supported_extensions.contains("GL_NV_evaluators");
this.GL_NV_explicit_multisample = supported_extensions.contains("GL_NV_explicit_multisample");
this.GL_NV_fence = supported_extensions.contains("GL_NV_fence");
this.GL_NV_float_buffer = supported_extensions.contains("GL_NV_float_buffer");
this.GL_NV_fog_distance = supported_extensions.contains("GL_NV_fog_distance");
this.GL_NV_fragment_program = supported_extensions.contains("GL_NV_fragment_program")
&& supported_extensions.contains("GL_NV_program");
this.GL_NV_fragment_program2 = supported_extensions.contains("GL_NV_fragment_program2");
this.GL_NV_fragment_program4 = supported_extensions.contains("GL_NV_fragment_program4");
this.GL_NV_fragment_program_option = supported_extensions.contains("GL_NV_fragment_program_option");
this.GL_NV_framebuffer_multisample_coverage = supported_extensions.contains("GL_NV_framebuffer_multisample_coverage");
this.GL_NV_geometry_program4 = supported_extensions.contains("GL_NV_geometry_program4");
this.GL_NV_geometry_shader4 = supported_extensions.contains("GL_NV_geometry_shader4");
this.GL_NV_gpu_program4 = supported_extensions.contains("GL_NV_gpu_program4");
this.GL_NV_gpu_program5 = supported_extensions.contains("GL_NV_gpu_program5");
this.GL_NV_gpu_shader5 = supported_extensions.contains("GL_NV_gpu_shader5");
this.GL_NV_half_float = supported_extensions.contains("GL_NV_half_float");
this.GL_NV_light_max_exponent = supported_extensions.contains("GL_NV_light_max_exponent");
this.GL_NV_multisample_coverage = supported_extensions.contains("GL_NV_multisample_coverage");
this.GL_NV_multisample_filter_hint = supported_extensions.contains("GL_NV_multisample_filter_hint");
this.GL_NV_occlusion_query = supported_extensions.contains("GL_NV_occlusion_query");
this.GL_NV_packed_depth_stencil = supported_extensions.contains("GL_NV_packed_depth_stencil");
this.GL_NV_parameter_buffer_object = supported_extensions.contains("GL_NV_parameter_buffer_object");
this.GL_NV_parameter_buffer_object2 = supported_extensions.contains("GL_NV_parameter_buffer_object2");
this.GL_NV_pixel_data_range = supported_extensions.contains("GL_NV_pixel_data_range");
this.GL_NV_point_sprite = supported_extensions.contains("GL_NV_point_sprite");
this.GL_NV_primitive_restart = supported_extensions.contains("GL_NV_primitive_restart");
this.GL_NV_register_combiners = supported_extensions.contains("GL_NV_register_combiners");
this.GL_NV_register_combiners2 = supported_extensions.contains("GL_NV_register_combiners2");
this.GL_NV_shader_buffer_load = supported_extensions.contains("GL_NV_shader_buffer_load");
this.GL_NV_shader_buffer_store = supported_extensions.contains("GL_NV_shader_buffer_store");
this.GL_NV_tessellation_program5 = supported_extensions.contains("GL_NV_tessellation_program5");
this.GL_NV_texgen_reflection = supported_extensions.contains("GL_NV_texgen_reflection");
this.GL_NV_texture_barrier = supported_extensions.contains("GL_NV_texture_barrier");
this.GL_NV_texture_compression_vtc = supported_extensions.contains("GL_NV_texture_compression_vtc");
this.GL_NV_texture_env_combine4 = supported_extensions.contains("GL_NV_texture_env_combine4");
this.GL_NV_texture_expand_normal = supported_extensions.contains("GL_NV_texture_expand_normal");
this.GL_NV_texture_rectangle = supported_extensions.contains("GL_NV_texture_rectangle");
this.GL_NV_texture_shader = supported_extensions.contains("GL_NV_texture_shader");
this.GL_NV_texture_shader2 = supported_extensions.contains("GL_NV_texture_shader2");
this.GL_NV_texture_shader3 = supported_extensions.contains("GL_NV_texture_shader3");
this.GL_NV_transform_feedback = supported_extensions.contains("GL_NV_transform_feedback");
this.GL_NV_transform_feedback2 = supported_extensions.contains("GL_NV_transform_feedback2");
this.GL_NV_vertex_array_range = supported_extensions.contains("GL_NV_vertex_array_range");
this.GL_NV_vertex_array_range2 = supported_extensions.contains("GL_NV_vertex_array_range2");
this.GL_NV_vertex_attrib_integer_64bit = supported_extensions.contains("GL_NV_vertex_attrib_integer_64bit");
this.GL_NV_vertex_buffer_unified_memory = supported_extensions.contains("GL_NV_vertex_buffer_unified_memory");
this.GL_NV_vertex_program = supported_extensions.contains("GL_NV_vertex_program")
&& supported_extensions.contains("GL_NV_program");
this.GL_NV_vertex_program1_1 = supported_extensions.contains("GL_NV_vertex_program1_1");
this.GL_NV_vertex_program2 = supported_extensions.contains("GL_NV_vertex_program2");
this.GL_NV_vertex_program2_option = supported_extensions.contains("GL_NV_vertex_program2_option");
this.GL_NV_vertex_program3 = supported_extensions.contains("GL_NV_vertex_program3");
this.GL_NV_vertex_program4 = supported_extensions.contains("GL_NV_vertex_program4");
this.GL_SGIS_generate_mipmap = supported_extensions.contains("GL_SGIS_generate_mipmap");
this.GL_SGIS_texture_lod = supported_extensions.contains("GL_SGIS_texture_lod");
this.GL_SUN_slice_accum = supported_extensions.contains("GL_SUN_slice_accum");
tracker.init();
}
}