From: <sp...@us...> - 2009-03-25 17:44:06
|
Revision: 3190 http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3190&view=rev Author: spasi Date: 2009-03-25 17:43:56 +0000 (Wed, 25 Mar 2009) Log Message: ----------- Added support for OpenGL 3.1 Added support for a bunch of new OpenGL extensions. Modified Paths: -------------- trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_cg_shader.java Added Paths: ----------- trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_performance_monitor.java trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_texture_texture4.java trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_vertex_shader_tesselator.java trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_compatibility.java trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_uniform_buffer_object.java trunk/LWJGL/src/templates/org/lwjgl/opengl/ATI_meminfo.java trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_provoking_vertex.java trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_texture_swizzle.java trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_vertex_array_bgra.java trunk/LWJGL/src/templates/org/lwjgl/opengl/GL31.java trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_explicit_multisample.java trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_transform_feedback2.java Property Changed: ---------------- trunk/LWJGL/src/ Property changes on: trunk/LWJGL/src ___________________________________________________________________ Added: svn:ignore + generated Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java =================================================================== --- trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2009-03-21 08:14:23 UTC (rev 3189) +++ trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -200,6 +200,8 @@ } // ----------------------[ 3.X ]---------------------- + if ( 3 < majorVersion || (3 == majorVersion && 1 <= minorVersion) ) + supported_extensions.add("OpenGL31"); if ( 3 <= majorVersion ) supported_extensions.add("OpenGL30"); Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_performance_monitor.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_performance_monitor.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_performance_monitor.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.*; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface AMD_performance_monitor { + + /** Accepted by the <pame> parameter of GetPerfMonitorCounterInfoAMD */ + int GL_COUNTER_TYPE_AMD = 0x8BC0; + int GL_COUNTER_RANGE_AMD = 0x8BC1; + + /** + * Returned as a valid value in <data> parameter of + * GetPerfMonitorCounterInfoAMD if <pname> = COUNTER_TYPE_AMD + */ + int GL_UNSIGNED_INT = 0x1405; + int GL_FLOAT = 0x1406; + int GL_UNSIGNED_INT64_AMD = 0x8BC2; + int GL_PERCENTAGE_AMD = 0x8BC3; + + /** Accepted by the <pname> parameter of GetPerfMonitorCounterDataAMD */ + + int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; + int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; + int GL_PERFMON_RESULT_AMD = 0x8BC6; + + void glGetPerfMonitorGroupsAMD(@OutParameter @Check(value = "1", canBeNull = true) @GLint IntBuffer numGroups, + @AutoSize("groups") @GLsizei int groupsSize, @GLuint IntBuffer groups); + + void glGetPerfMonitorCountersAMD(@GLuint int group, + @OutParameter @Check(value = "1") @GLint IntBuffer numCounters, + @OutParameter @Check(value = "1") @GLint IntBuffer maxActiveCounters, + @AutoSize("counters") @GLsizei int countersSize, + @GLuint IntBuffer counters); + + void glGetPerfMonitorGroupStringAMD(@GLuint int group, + @AutoSize("groupString") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer groupString); + + void glGetPerfMonitorCounterStringAMD(@GLuint int group, @GLuint int counter, + @AutoSize("counterString") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer counterString); + + void glGetPerfMonitorCounterInfoAMD(@GLuint int group, @GLuint int counter, @GLenum int pname, @Check(value = "16") @GLvoid ByteBuffer data); + + void glGenPerfMonitorsAMD(@AutoSize("monitors") @GLsizei int n, @OutParameter @GLuint IntBuffer monitors); + + void glDeletePerfMonitorsAMD(@AutoSize("monitors") @GLsizei int n, @GLuint IntBuffer monitors); + + void glSelectPerfMonitorCountersAMD(@GLuint int monitor, boolean enable, @GLuint int group, @AutoSize("counterList")int numCounters, @GLuint IntBuffer counterList); + + void glBeginPerfMonitorAMD(@GLuint int monitor); + + void glEndPerfMonitorAMD(@GLuint int monitor); + + void glGetPerfMonitorCounterDataAMD(@GLuint int monitor, @GLenum int pname, + @AutoSize("data") @GLsizei int dataSize, @GLuint IntBuffer data, + @OutParameter @Check(value = "1", canBeNull = true) @GLint IntBuffer bytesWritten); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_texture_texture4.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_texture_texture4.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_texture_texture4.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface AMD_texture_texture4 { +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_vertex_shader_tesselator.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_vertex_shader_tesselator.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/AMD_vertex_shader_tesselator.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.GLenum; + +public interface AMD_vertex_shader_tesselator { + + /** Returned by the <type> parameter of GetActiveUniform: */ + int GL_SAMPLER_BUFFER_AMD = 0x9001; + int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; + int GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003; + + /** Accepted by TessellationModeAMD */ + int GL_DISCRETE_AMD = 0x9006; + int GL_CONTINUOUS_AMD = 0x9007; + + /** Accepted by GetIntegerv */ + int GL_TESSELLATION_MODE_AMD = 0x9004; + + /** Accepted by GetFloatv */ + int GL_TESSELLATION_FACTOR_AMD = 0x9005; + + void glTessellationFactorAMD(float factor); + + void glTessellationModeAMD(@GLenum int mode); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_compatibility.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_compatibility.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_compatibility.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_compatibility { +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_uniform_buffer_object.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_uniform_buffer_object.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_uniform_buffer_object.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,133 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.*; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface ARB_uniform_buffer_object { + + /** + * Accepted by the <target> parameters of BindBuffer, BufferData, + * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, and + * GetBufferPointerv: + */ + int GL_UNIFORM_BUFFER_ARB = 0x8A11; + + /** + * Accepted by the <pname> parameter of GetIntegeri_v, GetBooleanv, + * GetIntegerv, GetFloatv, and GetDoublev: + */ + int GL_UNIFORM_BUFFER_BINDING_ARB = 0x8A28; + + /** Accepted by the <pname> parameter of GetIntegeri_v: */ + int GL_UNIFORM_BUFFER_START_ARB = 0x8A29; + int GL_UNIFORM_BUFFER_SIZE_ARB = 0x8A2A; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_MAX_VERTEX_UNIFORM_BLOCKS_ARB = 0x8A2B; + int GL_MAX_GEOMETRY_UNIFORM_BLOCKS_ARB = 0x8A2C; + int GL_MAX_FRAGMENT_UNIFORM_BLOCKS_ARB = 0x8A2D; + int GL_MAX_COMBINED_UNIFORM_BLOCKS_ARB = 0x8A2E; + int GL_MAX_UNIFORM_BUFFER_BINDINGS_ARB = 0x8A2F; + int GL_MAX_UNIFORM_BLOCK_SIZE_ARB = 0x8A30; + int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8A31; + int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_ARB = 0x8A32; + int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8A33; + int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT_ARB = 0x8A34; + + /** Accepted by the <pname> parameter of GetProgramiv: */ + int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH_ARB = 0x8A35; + int GL_ACTIVE_UNIFORM_BLOCKS_ARB = 0x8A36; + + /** Accepted by the <pname> parameter of GetActiveUniformsivARB: */ + int GL_UNIFORM_TYPE_ARB = 0x8A37; + int GL_UNIFORM_SIZE_ARB = 0x8A38; + int GL_UNIFORM_NAME_LENGTH_ARB = 0x8A39; + int GL_UNIFORM_BLOCK_INDEX_ARB = 0x8A3A; + int GL_UNIFORM_OFFSET_ARB = 0x8A3B; + int GL_UNIFORM_ARRAY_STRIDE_ARB = 0x8A3C; + int GL_UNIFORM_MATRIX_STRIDE_ARB = 0x8A3D; + int GL_UNIFORM_IS_ROW_MAJOR_ARB = 0x8A3E; + + /** Accepted by the <pname> parameter of GetActiveUniformBlockivARB: */ + int GL_UNIFORM_BLOCK_BINDING_ARB = 0x8A3F; + int GL_UNIFORM_BLOCK_DATA_SIZE_ARB = 0x8A40; + int GL_UNIFORM_BLOCK_NAME_LENGTH_ARB = 0x8A41; + int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS_ARB = 0x8A42; + int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES_ARB = 0x8A43; + int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER_ARB = 0x8A44; + int GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER_ARB = 0x8A45; + int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER_ARB = 0x8A46; + + /** Returned by GetActiveUniformsivARB and GetUniformBlockIndexARB */ + int GL_INVALID_INDEX_ARB = 0xFFFFFFFF; // TODO: Check if this is correct + + void glGetUniformIndicesARB(@GLuint int program, @AutoSize("uniformIndices") @GLsizei int uniformCount, + @Const @NullTerminated @GLchar ByteBuffer uniformNames, + @OutParameter @GLuint IntBuffer uniformIndices); + + @StripPostfix("params") + void glGetActiveUniformsivARB(@GLuint int program, @AutoSize("uniformIndices") @GLsizei int uniformCount, + @Const @GLuint IntBuffer uniformIndices, + @GLenum int pname, + @Check(value = "1") @GLint IntBuffer params); // TODO: We need to AutoSize "params" using "uniformCount" + + void glGetActiveUniformNameARB(@GLuint int program, @GLuint int uniformIndex, @AutoSize("uniformName") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer uniformName); + + @GLuint + int glGetUniformBlockIndexARB(@GLuint int program, @Const @NullTerminated @GLchar ByteBuffer uniformBlockName); + + @StripPostfix("params") + void glGetActiveUniformBlockivARB(@GLuint int program, @GLuint int uniformBlockIndex, @GLenum int pname, + @OutParameter @Check(value = "16") @GLint IntBuffer params); + + void glGetActiveUniformBlockNameARB(@GLuint int program, @GLuint int uniformBlockIndex, @AutoSize("uniformBlockName") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer uniformBlockName); + + void glBindBufferRange(@GLenum int target, @GLuint int index, @GLuint int buffer, @GLintptr long offset, @GLsizeiptr long size); + + void glBindBufferBase(@GLenum int target, @GLuint int index, @GLuint int buffer); + + void glGetIntegeri_v(@GLenum int value, @GLuint int index, @OutParameter @Check("4")IntBuffer data); + + void glUniformBlockBindingARB(@GLuint int program, @GLuint int uniformBlockIndex, @GLuint int uniformBlockBinding); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ATI_meminfo.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/ATI_meminfo.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ATI_meminfo.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ATI_meminfo { + + /** Accepted by the <value> parameter of GetIntegerv: */ + int GL_VBO_FREE_MEMORY_ATI = 0x87FB; + int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; + int GL_RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD; + +} \ No newline at end of file Modified: trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_cg_shader.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_cg_shader.java 2009-03-21 08:14:23 UTC (rev 3189) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_cg_shader.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -31,7 +31,7 @@ */ package org.lwjgl.opengl; -public interface EXT_cg_shader { +public interface EXT_Cg_shader { /** * You can pass GL_CG_VERTEX_SHADER_EXT to glCreateShaderARB instead of GL_VERTEX_SHADER_ARB to create a vertex shader object Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_provoking_vertex.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_provoking_vertex.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_provoking_vertex.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.GLenum; + +public interface EXT_provoking_vertex { + + /** Accepted by the <mode> parameter of ProvokingVertexEXT: */ + int GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D; + int GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_PROVOKING_VERTEX_EXT = 0x8E4F; + int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C; + + void glProvokingVertexEXT(@GLenum int mode); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_texture_swizzle.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_texture_swizzle.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_texture_swizzle.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_texture_swizzle { + + /** + * Accepted by the <pname> parameters of TexParameteri, + * TexParameterf, TexParameteriv, TexParameterfv, + * GetTexParameterfv, and GetTexParameteriv: + */ + int GL_TEXTURE_SWIZZLE_R_EXT = 0x8E42; + int GL_TEXTURE_SWIZZLE_G_EXT = 0x8E43; + int GL_TEXTURE_SWIZZLE_B_EXT = 0x8E44; + int GL_TEXTURE_SWIZZLE_A_EXT = 0x8E45; + + /** + * Accepted by the <pname> parameters of TexParameteriv, + * TexParameterfv, GetTexParameterfv, and GetTexParameteriv: + */ + int GL_TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46; + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_vertex_array_bgra.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_vertex_array_bgra.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_vertex_array_bgra.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_vertex_array_bgra { + + /** + * Accepted by the <size> parameter of ColorPointer, + * SecondaryColorPointer, and VertexAttribPointer: + */ + int GL_BGRA = 0x80E1; + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/GL31.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/GL31.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/GL31.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,263 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.*; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface GL31 { + + // ---------------------------------------------------------- + // ----------------------[ OpenGL 3.1 ]---------------------- + // ---------------------------------------------------------- + + int GL_RED_SNORM = 0x8F90; + int GL_RG_SNORM = 0x8F91; + int GL_RGB_SNORM = 0x8F92; + int GL_RGBA_SNORM = 0x8F93; + int GL_R8_SNORM = 0x8F94; + int GL_RG8_SNORM = 0x8F95; + int GL_RGB8_SNORM = 0x8F96; + int GL_RGBA8_SNORM = 0x8F97; + int GL_R16_SNORM = 0x8F98; + int GL_RG16_SNORM = 0x8F99; + int GL_RGB16_SNORM = 0x8F9A; + int GL_RGBA16_SNORM = 0x8F9B; + int GL_SIGNED_NORMALIZED = 0x8F9C; + + // ------------------------------------------------------------------ + // ----------------------[ ARB_draw_instanced ]---------------------- + // ------------------------------------------------------------------ + + void glDrawArraysInstanced(@GLenum int mode, int first, @GLsizei int count, @GLsizei int primcount); + + void glDrawElementsInstanced(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type, + @BufferObject(BufferKind.ElementVBO) + @Const + @GLubyte + @GLushort + @GLuint Buffer indices, @GLsizei int primcount); + + // --------------------------------------------------------------- + // ----------------------[ EXT_copy_buffer ]---------------------- + // --------------------------------------------------------------- + + int GL_COPY_READ_BUFFER = 0x0; // TODO: Find this value + int GL_COPY_WRITE_BUFFER = 0x0; // TODO: Find this value + + void glCopyBufferSubData(@GLenum int readtarget, @GLenum int writetarget, @GLintptr long readoffset, @GLintptr long writeoffset, @GLsizeiptr long size); + + // -------------------------------------------------------------------- + // ----------------------[ NV_primitive_restart ]---------------------- + // -------------------------------------------------------------------- + + /** + * Accepted by the <cap> parameter of IsEnabled, and by + * the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + int GL_PRIMITIVE_RESTART = 0x8F9D; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_PRIMITIVE_RESTART_INDEX = 0x8F9E; + + void glPrimitiveRestart(); + + void glPrimitiveRestartIndex(@GLuint int index); + + // ------------------------------------------------------------------------- + // ----------------------[ ARB_texture_buffer_object ]---------------------- + // ------------------------------------------------------------------------- + + /** + * Accepted by the <target> parameter of BindBuffer, BufferData, + * BufferSubData, MapBuffer, MapBufferRange, BindTexture, UnmapBuffer, + * GetBufferSubData, GetBufferParameteriv, GetBufferPointerv, and TexBuffer, + * and the <pname> parameter of GetBooleanv, GetDoublev, GetFloatv, and + * GetIntegerv: + */ + int GL_TEXTURE_BUFFER = 0x8C2A; + + /** + * Accepted by the <pname> parameters of GetBooleanv, GetDoublev, + * GetFloatv, and GetIntegerv: + */ + int GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B; + int GL_TEXTURE_BINDING_BUFFER = 0x8C2C; + int GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D; + int GL_TEXTURE_BUFFER_FORMAT = 0x8C2E; + + void glTexBuffer(@GLenum int target, @GLenum int internalformat, @GLuint int buffer); + + // --------------------------------------------------------------------- + // ----------------------[ ARB_texture_rectangle ]---------------------- + // --------------------------------------------------------------------- + + /** + * Accepted by the <cap> parameter of Enable, Disable and IsEnabled; + * by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv + * and GetDoublev; and by the <target> parameter of BindTexture, + * GetTexParameterfv, GetTexParameteriv, TexParameterf, TexParameteri, + * TexParameterfv and TexParameteriv: + * Accepted by the <target> parameter of GetTexImage, + * GetTexLevelParameteriv, GetTexLevelParameterfv, TexImage2D, + * CopyTexImage2D, TexSubImage2D and CopySubTexImage2D: + */ + int GL_TEXTURE_RECTANGLE = 0x84F5; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv and GetDoublev: + */ + int GL_TEXTURE_BINDING_RECTANGLE = 0x84F6; + + /** + * Accepted by the <target> parameter of GetTexLevelParameteriv, + * GetTexLevelParameterfv, GetTexParameteriv and TexImage2D: + */ + int GL_PROXY_TEXTURE_RECTANGLE = 0x84F7; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, + * GetIntegerv and GetFloatv: + */ + int GL_MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8; + + /** + * Returned by <type> parameter of GetActiveUniform when the location + * <index> for program object <program> is of type sampler2DRect: + */ + int GL_SAMPLER_2D_RECT = 0x8B63; + + /** + * Returned by <type> parameter of GetActiveUniform when the location + * <index> for program object <program> is of type sampler2DRectShadow: + */ + int GL_SAMPLER_2D_RECT_SHADOW = 0x8B64; + + // ------------------------------------------------------------------------- + // ----------------------[ ARB_uniform_buffer_object ]---------------------- + // ------------------------------------------------------------------------- + + /** + * Accepted by the <target> parameters of BindBuffer, BufferData, + * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, and + * GetBufferPointerv: + */ + int GL_UNIFORM_BUFFER = 0x8A11; + + /** + * Accepted by the <pname> parameter of GetIntegeri_v, GetBooleanv, + * GetIntegerv, GetFloatv, and GetDoublev: + */ + int GL_UNIFORM_BUFFER_BINDING = 0x8A28; + + /** Accepted by the <pname> parameter of GetIntegeri_v: */ + int GL_UNIFORM_BUFFER_START = 0x8A29; + int GL_UNIFORM_BUFFER_SIZE = 0x8A2A; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B; + int GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C; + int GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D; + int GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E; + int GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F; + int GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30; + int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31; + int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32; + int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33; + int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34; + + /** Accepted by the <pname> parameter of GetProgramiv: */ + int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35; + int GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36; + + /** Accepted by the <pname> parameter of GetActiveUniformsiv: */ + int GL_UNIFORM_TYPE = 0x8A37; + int GL_UNIFORM_SIZE = 0x8A38; + int GL_UNIFORM_NAME_LENGTH = 0x8A39; + int GL_UNIFORM_BLOCK_INDEX = 0x8A3A; + int GL_UNIFORM_OFFSET = 0x8A3B; + int GL_UNIFORM_ARRAY_STRIDE = 0x8A3C; + int GL_UNIFORM_MATRIX_STRIDE = 0x8A3D; + int GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E; + + /** Accepted by the <pname> parameter of GetActiveUniformBlockiv: */ + int GL_UNIFORM_BLOCK_BINDING = 0x8A3F; + int GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40; + int GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41; + int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42; + int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43; + int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44; + int GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45; + int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46; + + /** Returned by GetActiveUniformsiv and GetUniformBlockIndex */ + int GL_INVALID_INDEX = 0xFFFFFFFF; // TODO: Check if this is correct + + void glGetUniformIndices(@GLuint int program, @AutoSize("uniformIndices") @GLsizei int uniformCount, + @Const @NullTerminated @GLchar ByteBuffer uniformNames, + @OutParameter @GLuint IntBuffer uniformIndices); + + @StripPostfix("params") + void glGetActiveUniformsiv(@GLuint int program, @AutoSize("uniformIndices") @GLsizei int uniformCount, + @Const @GLuint IntBuffer uniformIndices, + @GLenum int pname, + @Check(value = "1") @GLint IntBuffer params); // TODO: We need to AutoSize "params" using "uniformCount" + + void glGetActiveUniformName(@GLuint int program, @GLuint int uniformIndex, @AutoSize("uniformName") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer uniformName); + + @GLuint + int glGetUniformBlockIndex(@GLuint int program, @Const @NullTerminated @GLchar ByteBuffer uniformBlockName); + + @StripPostfix("params") + void glGetActiveUniformBlockiv(@GLuint int program, @GLuint int uniformBlockIndex, @GLenum int pname, + @OutParameter @Check(value = "16") @GLint IntBuffer params); + + void glGetActiveUniformBlockName(@GLuint int program, @GLuint int uniformBlockIndex, @AutoSize("uniformBlockName") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @GLchar ByteBuffer uniformBlockName); + + void glUniformBlockBinding(@GLuint int program, @GLuint int uniformBlockIndex, @GLuint int uniformBlockBinding); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_explicit_multisample.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_explicit_multisample.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_explicit_multisample.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.*; + +import java.nio.*; + +public interface NV_explicit_multisample { + + /** Accepted by the <pname> parameter of GetMultisamplefvNV: */ + int GL_SAMPLE_POSITION_NV = 0x8E50; + + /** + * Accepted by the <cap> parameter of Enable, Disable, and IsEnabled, and by + * the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + + int GL_SAMPLE_MASK_NV = 0x8E51; + + /** + * Accepted by the <pname> parameter of GetBooleanIndexedvEXT and + * GetIntegerIndexedvEXT: + */ + + int GL_SAMPLE_MASK_VALUE_NV = 0x8E52; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv, + * and GetFloatv: + */ + + int GL_TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53; + int GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54; + int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; + + /** Accepted by the <target> parameter of BindTexture, and TexRenderbufferNV: */ + + int GL_TEXTURE_RENDERBUFFER_NV = 0x8E55; + + /** Returned by the <type> parameter of GetActiveUniform: */ + int GL_SAMPLER_RENDERBUFFER_NV = 0x8E56; + int GL_INT_SAMPLER_RENDERBUFFER_NV = 0x8E57; + int GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58; + + void glGetBooleanIndexedvEXT(@GLenum int pname, @GLuint int index, @OutParameter @Check("16") @GLboolean ByteBuffer data); + + void glGetIntegerIndexedvEXT(@GLenum int pname, @GLuint int index, @OutParameter @Check("16") IntBuffer data); + + @StripPostfix("val") + void glGetMultisamplefvNV(@GLenum int pname, @GLuint int index, @OutParameter @Check("2") FloatBuffer val); + + void glSampleMaskIndexedNV(@GLuint int index, @GLbitfield int mask); + + void glTexRenderbufferNV(@GLenum int target, @GLuint int renderbuffer); + +} \ No newline at end of file Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_transform_feedback2.java =================================================================== --- trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_transform_feedback2.java (rev 0) +++ trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_transform_feedback2.java 2009-03-25 17:43:56 UTC (rev 3190) @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.util.generator.*; + +import java.nio.IntBuffer; + +public interface NV_transform_feedback2 { + + /** Accepted by the <target> parameter of BindTransformFeedbackNV: */ + + int GL_TRANSFORM_FEEDBACK_NV = 0x8E22; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv, + * and GetFloatv: + */ + int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23; + int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24; + int GL_TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25; + + void glBindTransformFeedbackNV(@GLenum int target, @GLuint int id); + + void glDeleteTransformFeedbacksNV(@AutoSize("ids") @GLsizei int n, @Const @GLuint IntBuffer ids); + + void glGenTransformFeedbacksNV(@AutoSize("ids") @GLsizei int n, @OutParameter @GLuint IntBuffer ids); + + boolean glIsTransformFeedbackNV(@GLuint int id); + + void glPauseTransformFeedbackNV(); + + void glResumeTransformFeedbackNV(); + + void glDrawTransformFeedbackNV(@GLenum int mode, @GLuint int id); + +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |