diff options
author | Sven Gothel <[email protected]> | 2010-08-24 02:39:14 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2010-08-24 02:39:14 +0200 |
commit | ca119c97340caf325cd682c5fdbe8f794a35ac0e (patch) | |
tree | 3ad60aff37fe6e6167db14c3f3f4fcbf36e6a535 /make/config/jogl/gl-common.cfg | |
parent | 8d55c437547a697b7d0bd4dd81b6669209cf912f (diff) |
Add OpenGL 3.3, 4.0 and 4.1 language mapping.
- Update header:
- GL/glext.h to khronos 2010-08-03
- GL3/gl3.h to khronos 2010-08-03
- Move platform code to
GL/glplatform.h
GL3/glplatform.h
- Unify 64bit typedefs: gl-64bit-types.h
- Move GL 3.[123] and 4.[01] complete subsumed extension
enums and functions into their extension spec and just reference them.
This ensures proper extension availability
via lower OpenGL profiles, hence a proper GL2GL3 interface.
- GL3/GL4 cleanup:
- make-glextension-depignore.sh:
determine required GL version for extensions
for proper positioning, ie GL2GL3 or GL3 or GL4
via gluegen IgnoreExtension commands.
- use ARB_ES2_compatibility for common GL2ES2 methods,
if available
- consolidated gl2-gl4 subsumed extension to gl-common.cfg
- Missing GL3/GL4 Functions:
glMultiDrawElementsBaseVertex
glDebugMessageCallbackARB
glDebugMessageCallbackAMD
- TODO (new feature integration):
- ARB_ES2_compatibility / ARB_get_program_binary for com/jogamp/opengl/util/glsl, ie
- store binaries com/jogamp/opengl/util/glsl/sdk/CompileShader*
- query supported binary formats (enums ?)
- optional prio binaries
- ARB_ES2_compatibility, if available GLES2/GL2ES12 would be available
- ARB_separate_shader_objects for com/jogamp/opengl/util/glsl, ie
- swizzle vertex/fragment shader in programs
- ..
Diffstat (limited to 'make/config/jogl/gl-common.cfg')
-rw-r--r-- | make/config/jogl/gl-common.cfg | 73 |
1 files changed, 64 insertions, 9 deletions
diff --git a/make/config/jogl/gl-common.cfg b/make/config/jogl/gl-common.cfg index 2c8e79e75..3c413465e 100644 --- a/make/config/jogl/gl-common.cfg +++ b/make/config/jogl/gl-common.cfg @@ -35,6 +35,9 @@ Ignore glGetVertexAttribPointerv Ignore glGetVertexAttribPointervARB Ignore glGetVertexAttribPointervNV Ignore glTracePointerRangeMESA +Ignore glMultiDrawElementsBaseVertex +Ignore glDebugMessageCallbackARB +Ignore glDebugMessageCallbackAMD # Manually implement glMapBuffer as the size of the returned buffer # can only be computed by calling another routine @@ -221,13 +224,8 @@ RenameExtensionIntoCore GL_EXT_packed_float RenameExtensionIntoCore GL_EXT_texture_shared_exponent # gl.h uses GL_ARB_framebuffer_object -# GL_*_geometry_shader4 is included here, due to a naming collision otherwise. -# glFramebufferTextureLayerARB is ignored due to it's existence in GL_ARB_framebuffer_object and GL_ARB_geometry_shader4 RenameExtensionIntoCore GL_ARB_framebuffer_object IgnoreExtension GL_EXT_framebuffer_object -RenameExtensionIntoCore GL_ARB_geometry_shader4 -IgnoreExtension GL_EXT_geometry_shader4 -Ignore glFramebufferTextureLayerARB RenameExtensionIntoCore GL_NV_half_float RenameExtensionIntoCore GL_ARB_half_float_pixel @@ -269,27 +267,83 @@ RenameExtensionIntoCore GL_ARB_map_buffer_range RenameExtensionIntoCore GL_ARB_draw_instanced IgnoreExtension GL_EXT_draw_instanced RenameExtensionIntoCore GL_ARB_copy_buffer -RenameExtensionIntoCore GL_NV_primitive_restart +# Does not match the common namespace GL_NV_primitive_restart RenameExtensionIntoCore GL_ARB_texture_buffer_object IgnoreExtension GL_EXT_texture_buffer_object -# Actually GL_ARB_texture_rectangle, but let's be convenient +# We rename EXT_texture_rectangle into core, so ARB_texture_rectangle will stay for convenience RenameExtensionIntoCore GL_EXT_texture_rectangle IgnoreExtension GL_NV_texture_rectangle RenameExtensionIntoCore GL_ARB_uniform_buffer_object # <<< OpenGL 3.1 - +# >>> OpenGL 3.2 +# Rename extension suffices (if exist) subsumed in OpenGL 3.2 (from OpenGL 3.2 spec, Appendix H.1) +RenameExtensionIntoCore GL_ARB_vertex_array_bgra +RenameExtensionIntoCore GL_ARB_draw_elements_base_vertex +RenameExtensionIntoCore GL_ARB_fragment_coord_conventions +RenameExtensionIntoCore GL_ARB_provoking_vertex +RenameExtensionIntoCore GL_ARB_seamless_cube_map +RenameExtensionIntoCore GL_ARB_texture_multisample +RenameExtensionIntoCore GL_ARB_depth_clamp +# GL_ARB_geometry_shader4 is subsumed but values/namespace is orthogonal +IgnoreExtension GL_EXT_geometry_shader4 +RenameExtensionIntoCore GL_ARB_sync +# <<< OpenGL 3.2 + +# >>> OpenGL 3.3 +# Rename extension suffices (if exist) subsumed in OpenGL 3.3 (from OpenGL 3.3 spec, Appendix I.1) +RenameExtensionIntoCore GL_ARB_shader_bit_encoding +RenameExtensionIntoCore GL_ARB_blend_func_extended +RenameExtensionIntoCore GL_ARB_explicit_attrib_location +RenameExtensionIntoCore GL_ARB_occlusion_query2 +RenameExtensionIntoCore GL_ARB_sampler_objects +RenameExtensionIntoCore GL_ARB_texture_rgb10_a2ui +RenameExtensionIntoCore GL_ARB_texture_swizzle +RenameExtensionIntoCore GL_ARB_timer_query +RenameExtensionIntoCore GL_ARB_instanced_arrays +RenameExtensionIntoCore GL_ARB_vertex_type_2_10_10_10_rev +# <<< OpenGL 3.3 + +# >>> OpenGL 4.0 +# Rename extension suffices (if exist) subsumed in OpenGL 4.0 (from OpenGL 4.0 spec, Appendix J.1) +RenameExtensionIntoCore GL_ARB_texture_query_lod +RenameExtensionIntoCore GL_ARB_draw_buffers_blend +RenameExtensionIntoCore GL_ARB_draw_indirect +RenameExtensionIntoCore GL_ARB_gpu_shader5 +RenameExtensionIntoCore GL_ARB_gpu_shader_fp64 +RenameExtensionIntoCore GL_ARB_sample_shading +RenameExtensionIntoCore GL_ARB_shader_subroutine +RenameExtensionIntoCore GL_ARB_tessellation_shader +RenameExtensionIntoCore GL_ARB_texture_buffer_object_rgb32 +RenameExtensionIntoCore GL_ARB_texture_cube_map_array +RenameExtensionIntoCore GL_ARB_texture_gather +RenameExtensionIntoCore GL_ARB_transform_feedback2 +RenameExtensionIntoCore GL_ARB_transform_feedback3 +# <<< OpenGL 4.0 + +# >>> OpenGL 4.1 +# Rename extension suffices (if exist) subsumed in OpenGL 4.1 (from OpenGL 4.1 spec, Appendix K.1) +RenameExtensionIntoCore GL_ARB_ES2_compatibility +RenameExtensionIntoCore GL_ARB_get_program_binary +RenameExtensionIntoCore GL_ARB_separate_shader_objects +RenameExtensionIntoCore GL_ARB_shader_precision +RenameExtensionIntoCore GL_ARB_vertex_attrib_64bit +IgnoreExtension GL_EXT_vertex_attrib_64bit +RenameExtensionIntoCore GL_ARB_viewport_array +# <<< OpenGL 4.1 # Ignore a few obsolete versions of extensions that have been subsumed into the core or ARB extensions IgnoreExtension GL_EXT_multisample IgnoreExtension GL_EXT_point_parameters -IgnoreExtension GL_EXT_texture_rectangle +IgnoreExtension GL_EXT_separate_shader_objects + # # Opaques and other directives for platform-independent routines # Opaque boolean GLboolean +Opaque long GLsync ReturnsString glGetString ReturnsString glGetStringi @@ -349,6 +403,7 @@ ReturnValueCapacity wglAllocateMemoryNV {0} ReturnValueCapacity glXAllocateMemoryNV {0} ReturnValueCapacity glMapBufferRange {2} +ReturnValueCapacity glMapNamedBufferRangeEXT {2} # Pass arguments to ARB_vertex_program, ARB_fragment_program, # ARB_shader_objects, NV_vertex_program, NV_fragment_program, and |