From 3a0d7703da32e9a5ddf08a334f18588a78038d88 Mon Sep 17 00:00:00 2001
From: Sven Gothel <sgothel@jausoft.com>
Date: Mon, 15 Jul 2013 13:39:22 +0200
Subject: Add Support for GL 4.3 (Bug 716) and ES 3.0 (Bug 717)

ES3 / GL4.3:

- Update all EGL, GLX, WGL and GL (desktop and mobile) khronos headers to latest version.
  - GL3/gl3* -> GL/glcorearb*

  - Explicitly preserve ES2_compatibility and ES3_compatibility in header,
    most extension grouping was removed in new headers.

  - Always load all GLHeader to ensure proper extension association across all profiles.

  - Unified method signatures

  - Added GL_EXT_map_buffer_range to core

  - Using common 'glMapBufferImpl(..)' for all glMapBuffer(..) and glMapBufferRange(..) impl.

  - Init necessary fields of GL instances via 'finalizeInit()' called by reflection, if exist.
    This allows removing initialization checks, i.e. for all buffer validations.

- BuildStaticGLInfo: Can handle new GL header structure, i.e. one CPP extenstion block incl. define + funcs.

- GLJavaMethodBindingEmitter: Simply print the

- No GL duplication due to new intermediate interfaces, see below

- OO lineare inheritance (Added GL2ES3, GL3ES3 and GL4ES3 intemediates):
  GLBase - GL - GL2ES2 - GLES2
  GLBase - GL - GL2ES2 - GL2GL3 - [ GL2, GL3 ]
  GLBase - GL - GL2ES2 - GL2ES3 - GL3ES3 - [ GL3 ]
  GLBase - GL - GL2ES2 - GL2ES3 - GL3ES3 - GL4ES3 - [ GLES3, GL4, .. ]

- Expose 'usable' intermediate interfaces GL3ES3 and GL4ES3 in GLBase/GLProfile/GLContext
  via is*() and get*().

- GLContext*:
  - isGL3core() is true if [ GL4, GL3, GLES3 ] (added GLES3)

  - Added ctxProfile argument to allow handling ES versions:
    - getMaxMajor(..), getMaxMinor(..), isValidGLVersion(..) and decrementGLVersion(..)
    - mapGLVersions(..) prepared for ES ARB/KHR validation

  - EGLContext checks ES3 (via old ctx's GL_VERSION)

- ExtensionAvailabilityCache adds GL_ES_Version_X_Y for ES.

- Prelim tests w/ Mesa 9.1.3
  GL Version     3.0 (ES profile, ES2 compat, ES3 compat, FBO, hardware) - OpenGL ES 3.0 Mesa 9.1.3 [GL 3.0.0, vendor 9.1.3 (Mesa 9.1.3)]

- TODO:
  - Use KHR_create_context in EGLContext.createContextARBImpl(..)
  - More tests (Mobile, ..)

+++

Misc:

- GLContext*:
  - Complete glAllocateMemoryNV w/ glFreeMemoryNV.
---
 make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java | 11 +++++++++++
 1 file changed, 11 insertions(+)

(limited to 'make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java')

diff --git a/make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java b/make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java
index 4522d34c8..5ad235de5 100644
--- a/make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java
+++ b/make/config/jogl/gl-if-CustomJavaCode-gl2_es2.java
@@ -39,10 +39,21 @@
    * <br> Calls <code> void {@native glDepthRange}(GLclampd zNear, GLclampd zFar); </code> if no native implementation is available.   */
   public void glDepthRangef(float zNear, float zFar);
 
+  public void glDepthRange(double zNear, double zFar);
+
   /** Entry point to C language function: 
    * <code> void {@native glClearDepthf}(GLclampf depth); </code> 
    * <br>Part of <code>GL_ES_VERSION_2_0</code> and <code>GL_ARB_ES2_compatibility</code>. 
    * <br> Calls <code> void {@native glClearDepth}(GLclampd depth); </code> if no native implementation is available.   */
   public void glClearDepthf(float depth);
 
+  public void glClearDepth( double depth );
+
+  public void glVertexAttribPointer(GLArrayData array);
+
+  public void glUniform(GLUniformData data);
+
+  /** Part of <code>GL_VERSION_1_0</code>, <code>GL_ES_VERSION_2_0</code>, <code>GL_ANGLE_depth_texture</code> */
+  public static final int GL_DEPTH_COMPONENT = 0x1902;
+
   /** End: GL_ARB_ES2_compatibility functions, which are part of ES2 core as well */
-- 
cgit v1.2.3