diff options
Diffstat (limited to 'make/config/jogl')
-rw-r--r-- | make/config/jogl/cgl-macosx.cfg | 1 | ||||
-rw-r--r-- | make/config/jogl/gl-common.cfg | 23 | ||||
-rw-r--r-- | make/config/jogl/gl-gl4bc.cfg | 4 | ||||
-rw-r--r-- | make/config/jogl/gl-if-CustomJavaCode-gl.java | 19 | ||||
-rw-r--r-- | make/config/jogl/gl-impl-CustomJavaCode-common.java | 6 | ||||
-rw-r--r-- | make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java | 2 | ||||
-rw-r--r-- | make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java | 8 | ||||
-rw-r--r-- | make/config/jogl/gl-impl-CustomJavaCode-gles1.java | 8 |
8 files changed, 59 insertions, 12 deletions
diff --git a/make/config/jogl/cgl-macosx.cfg b/make/config/jogl/cgl-macosx.cfg index 38034a7ad..06bc94626 100644 --- a/make/config/jogl/cgl-macosx.cfg +++ b/make/config/jogl/cgl-macosx.cfg @@ -16,6 +16,7 @@ Opaque long void * # Opaque directives for low-level CGL binding (for Java2D/JOGL bridge) Opaque long CGLContextObj +Opaque long CGLShareGroupObj Opaque long CGLPBufferObj Opaque long CGLPixelFormatObj diff --git a/make/config/jogl/gl-common.cfg b/make/config/jogl/gl-common.cfg index 2c59a74ed..2faef6f0c 100644 --- a/make/config/jogl/gl-common.cfg +++ b/make/config/jogl/gl-common.cfg @@ -434,7 +434,7 @@ ArgumentIsString glGetUniformIndices 2 ArgumentIsString glGetUniformBlockIndex 1 ArgumentIsString glTransformFeedbackVaryings 2 -# String output values: +# String return values must use byte[] etc .. # ArgumentIsString glGetActiveAttrib 6 # ArgumentIsString glGetActiveUniformBlockName 4 # ArgumentIsString glGetActiveUniformName 4 @@ -443,6 +443,27 @@ ArgumentIsString glTransformFeedbackVaryings 2 # ArgumentIsString glGetShaderInfoLog 3 # ArgumentIsString glGetShaderSource 3 # ArgumentIsString glGetTransformFeedbackVarying 6 +# ArgumentIsString glGetActiveUniformARB 6 +# ArgumentIsString glGetActiveSubroutineName 5 +# ArgumentIsString glGetActiveSubroutineUniformName 5 +# ArgumentIsString glGetNamedStringARB 4 - bug param1 is String r/o see below + +ArgumentIsString glBindFragDataLocationIndexed 3 +ArgumentIsString glGetFragDataIndex 1 +ArgumentIsString glGetSubroutineIndex 2 +ArgumentIsString glGetSubroutineUniformLocation 2 + +ArgumentIsString glDebugMessageInsertARB 5 +ArgumentIsString glGetDebugMessageLogARB 7 +ArgumentIsString glDebugMessageInsertAMD 4 +ArgumentIsString glGetDebugMessageLogAMD 6 + +ArgumentIsString glNamedStringARB 2 4 +ArgumentIsString glDeleteNamedStringARB 1 +ArgumentIsString glCompileShaderIncludeARB 2 +ArgumentIsString glIsNamedStringARB 1 +ArgumentIsString glGetNamedStringARB 1 +ArgumentIsString glGetNamedStringivARB 1 # # Use cached GL_EXTENSION if possible, diff --git a/make/config/jogl/gl-gl4bc.cfg b/make/config/jogl/gl-gl4bc.cfg index 06a9c76f1..aafb9166b 100644 --- a/make/config/jogl/gl-gl4bc.cfg +++ b/make/config/jogl/gl-gl4bc.cfg @@ -51,6 +51,10 @@ ManuallyImplement glMapNamedBufferEXT ForceProcAddressGen glMapNamedBufferEXT JavaEpilogue glNamedBufferDataEXT bufferSizeTracker.setDirectStateBufferSize({0}, this, {1}); +# Manuall implement glDebugMessageCallback* using the proc address resolver +ForceProcAddressGen glDebugMessageCallbackARB +ForceProcAddressGen glDebugMessageCallbackAMD + # Force all of the methods to be emitted using dynamic linking so we # don't need to link against any emulation library on the desktop or # depend on the presence of an import library for a particular device diff --git a/make/config/jogl/gl-if-CustomJavaCode-gl.java b/make/config/jogl/gl-if-CustomJavaCode-gl.java index 1ff8b8e8e..4741b2df5 100644 --- a/make/config/jogl/gl-if-CustomJavaCode-gl.java +++ b/make/config/jogl/gl-if-CustomJavaCode-gl.java @@ -58,8 +58,25 @@ public void glDepthRange(double zNear, double zFar); + /** + * @param target a GL buffer (VBO) target as used in {@link GL#glBindBuffer(int, int)}, ie {@link GL#GL_ELEMENT_ARRAY_BUFFER}, {@link GL#GL_ARRAY_BUFFER}, .. + * @return the GL buffer (VBO) name bound to a target via {@link GL#glBindBuffer(int, int)} or 0 if unbound. + */ public int glGetBoundBuffer(int target); + /** + * @param buffer a GL buffer name, generated with {@link GL#glGenBuffers(int, int[], int)} and used in {@link GL#glBindBuffer(int, int)}, {@link GL#glBufferData(int, long, java.nio.Buffer, int)} or {@link GL2#glNamedBufferDataEXT(int, long, java.nio.Buffer, int)} for example. + * @return the size of the given GL buffer + */ + public long glGetBufferSize(int buffer); + + /** + * @return true if a VBO is bound to {@link GL.GL_ARRAY_BUFFER} via {@link GL#glBindBuffer(int, int)}, otherwise false + */ public boolean glIsVBOArrayEnabled(); - public boolean glIsVBOElementEnabled(); + + /** + * @return true if a VBO is bound to {@link GL.GL_ELEMENT_ARRAY_BUFFER} via {@link GL#glBindBuffer(int, int)}, otherwise false + */ + public boolean glIsVBOElementArrayEnabled(); diff --git a/make/config/jogl/gl-impl-CustomJavaCode-common.java b/make/config/jogl/gl-impl-CustomJavaCode-common.java index 4872490b0..0a8e90171 100644 --- a/make/config/jogl/gl-impl-CustomJavaCode-common.java +++ b/make/config/jogl/gl-impl-CustomJavaCode-common.java @@ -7,11 +7,15 @@ return bufferStateTracker.getBoundBufferObject(target, this); } + public long glGetBufferSize(int buffer) { + return bufferSizeTracker.getDirectStateBufferSize(buffer, this); + } + public boolean glIsVBOArrayEnabled() { return checkArrayVBOEnabled(false); } - public boolean glIsVBOElementEnabled() { + public boolean glIsVBOElementArrayEnabled() { return checkElementVBOEnabled(false); } diff --git a/make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java b/make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java index d99f46ec1..bc2af092b 100644 --- a/make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java +++ b/make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java @@ -2,7 +2,7 @@ if(array.getComponentNumber()==0) return; if(array.isVBO()) { glVertexAttribPointer(array.getLocation(), array.getComponentNumber(), array.getComponentType(), - array.getNormalized(), array.getStride(), array.getOffset()); + array.getNormalized(), array.getStride(), array.getVBOOffset()); } else { glVertexAttribPointer(array.getLocation(), array.getComponentNumber(), array.getComponentType(), array.getNormalized(), array.getStride(), array.getBuffer()); diff --git a/make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java b/make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java index 6776feeb7..dbfa3ef4d 100644 --- a/make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java +++ b/make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java @@ -358,7 +358,7 @@ native private ByteBuffer newDirectByteBuffer(long addr, long capacity); public void glVertexPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -366,7 +366,7 @@ native private ByteBuffer newDirectByteBuffer(long addr, long capacity); public void glColorPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -378,7 +378,7 @@ native private ByteBuffer newDirectByteBuffer(long addr, long capacity); throw new GLException("Only 3 components per normal allowed"); } if(array.isVBO()) { - glNormalPointer(array.getComponentType(), array.getStride(), array.getOffset()); + glNormalPointer(array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glNormalPointer(array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -386,7 +386,7 @@ native private ByteBuffer newDirectByteBuffer(long addr, long capacity); public void glTexCoordPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } diff --git a/make/config/jogl/gl-impl-CustomJavaCode-gles1.java b/make/config/jogl/gl-impl-CustomJavaCode-gles1.java index faff8b89f..0a0f87897 100644 --- a/make/config/jogl/gl-impl-CustomJavaCode-gles1.java +++ b/make/config/jogl/gl-impl-CustomJavaCode-gles1.java @@ -295,7 +295,7 @@ native private ByteBuffer newDirectByteBuffer(long addr, long capacity); public void glVertexPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glVertexPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -303,7 +303,7 @@ public void glVertexPointer(GLArrayData array) { public void glColorPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glColorPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -315,7 +315,7 @@ public void glNormalPointer(GLArrayData array) { throw new GLException("Only 3 components per normal allowed"); } if(array.isVBO()) { - glNormalPointer(array.getComponentType(), array.getStride(), array.getOffset()); + glNormalPointer(array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glNormalPointer(array.getComponentType(), array.getStride(), array.getBuffer()); } @@ -323,7 +323,7 @@ public void glNormalPointer(GLArrayData array) { public void glTexCoordPointer(GLArrayData array) { if(array.getComponentNumber()==0) return; if(array.isVBO()) { - glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getOffset()); + glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getVBOOffset()); } else { glTexCoordPointer(array.getComponentNumber(), array.getComponentType(), array.getStride(), array.getBuffer()); } |