From 45108474877b2ce6b68b40816df384cd4e87bda6 Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Thu, 29 Jan 2004 22:08:59 +0000 Subject: [PATCH] Split extgl functions into separate cpp files. Added some extensions --- src/java/org/lwjgl/opengl/GLCaps.java | 1 + .../lwjgl/opengl/arb/ARBVertexProgram.java | 170 -- .../lwjgl/opengl/nv/NVRegisterCombiners.java | 8 - .../lwjgl/opengl/nv/NVRegisterCombiners2.java | 11 + .../opengl/nv/NVTextureCompressionVTC.java | 53 + .../org_lwjgl_opengl_arb_ARBMatrixPalette.cpp | 24 + .../org_lwjgl_opengl_arb_ARBMultisample.cpp | 12 + .../org_lwjgl_opengl_arb_ARBMultitexture.cpp | 55 + ...rg_lwjgl_opengl_arb_ARBPointParameters.cpp | 15 + .../arb/org_lwjgl_opengl_arb_ARBProgram.cpp | 49 + ...lwjgl_opengl_arb_ARBTextureCompression.cpp | 30 + ...rg_lwjgl_opengl_arb_ARBTransposeMatrix.cpp | 15 + .../org_lwjgl_opengl_arb_ARBVertexBlend.cpp | 36 + ...lwjgl_opengl_arb_ARBVertexBufferObject.cpp | 45 + .../org_lwjgl_opengl_arb_ARBVertexProgram.cpp | 324 +-- .../arb/org_lwjgl_opengl_arb_ARBWindowPos.cpp | 27 + .../org_lwjgl_opengl_ati_ATIElementArray.cpp | 18 + .../org_lwjgl_opengl_ati_ATIEnvmapBumpmap.cpp | 21 + ...org_lwjgl_opengl_ati_ATIFragmentShader.cpp | 51 + .../org_lwjgl_opengl_ati_ATIPnTriangles.cpp | 15 + ...rg_lwjgl_opengl_ati_ATISeparateStencil.cpp | 15 + ..._lwjgl_opengl_ati_ATIVertexArrayObject.cpp | 45 + .../org_lwjgl_opengl_ati_ATIVertexStreams.cpp | 66 + ..._lwjgl_opengl_ext_EXTBlendFuncSeparate.cpp | 12 + ...wjgl_opengl_ext_EXTCompiledVertexArray.cpp | 15 + ..._lwjgl_opengl_ext_EXTDrawRangeElements.cpp | 12 + .../ext/org_lwjgl_opengl_ext_EXTFogCoord.cpp | 18 + ...rg_lwjgl_opengl_ext_EXTMultiDrawArrays.cpp | 15 + ...rg_lwjgl_opengl_ext_EXTPointParameters.cpp | 15 + ...org_lwjgl_opengl_ext_EXTSecondaryColor.cpp | 33 + ...org_lwjgl_opengl_ext_EXTStencilTwoSide.cpp | 12 + .../org_lwjgl_opengl_ext_EXTVertexShader.cpp | 135 ++ ...rg_lwjgl_opengl_ext_EXTVertexWeighting.cpp | 18 + src/native/common/extgl.cpp | 1999 +--------------- src/native/common/extgl.h | 2071 +---------------- src/native/common/nv/Makefile.am | 1 + .../nv/org_lwjgl_opengl_nv_NVEvaluators.cpp | 36 + .../common/nv/org_lwjgl_opengl_nv_NVFence.cpp | 30 + .../org_lwjgl_opengl_nv_NVFragmentProgram.cpp | 27 + .../org_lwjgl_opengl_nv_NVOcclusionQuery.cpp | 30 + .../nv/org_lwjgl_opengl_nv_NVPointSprite.cpp | 15 + .../nv/org_lwjgl_opengl_nv_NVProgram.cpp | 36 + ...rg_lwjgl_opengl_nv_NVRegisterCombiners.cpp | 73 +- ...g_lwjgl_opengl_nv_NVRegisterCombiners2.cpp | 80 + ...org_lwjgl_opengl_nv_NVRegisterCombiners2.h | 31 + ...org_lwjgl_opengl_nv_NVVertexArrayRange.cpp | 43 + .../org_lwjgl_opengl_nv_NVVertexProgram.cpp | 123 + src/native/common/org_lwjgl_opengl_GL11.cpp | 1021 +++++++- src/native/common/org_lwjgl_opengl_GL12.cpp | 135 +- src/native/common/org_lwjgl_opengl_GL13.cpp | 157 +- src/native/common/org_lwjgl_opengl_GL14.cpp | 148 +- 51 files changed, 3013 insertions(+), 4434 deletions(-) create mode 100644 src/java/org/lwjgl/opengl/nv/NVTextureCompressionVTC.java create mode 100644 src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.cpp create mode 100644 src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.h diff --git a/src/java/org/lwjgl/opengl/GLCaps.java b/src/java/org/lwjgl/opengl/GLCaps.java index 7c24d57b..e75b05a1 100644 --- a/src/java/org/lwjgl/opengl/GLCaps.java +++ b/src/java/org/lwjgl/opengl/GLCaps.java @@ -129,6 +129,7 @@ public abstract class GLCaps { public static boolean GL_NV_texture_shader3; public static boolean GL_NV_vertex_array_range; public static boolean GL_NV_vertex_array_range2; + public static boolean GL_NV_texture_compression_vtc; public static boolean GL_NV_vertex_program; public static boolean GL_NV_vertex_program1_1; public static boolean GL_NV_vertex_program2; diff --git a/src/java/org/lwjgl/opengl/arb/ARBVertexProgram.java b/src/java/org/lwjgl/opengl/arb/ARBVertexProgram.java index 83a4164d..52cf9feb 100644 --- a/src/java/org/lwjgl/opengl/arb/ARBVertexProgram.java +++ b/src/java/org/lwjgl/opengl/arb/ARBVertexProgram.java @@ -114,176 +114,6 @@ public class ARBVertexProgram extends ARBProgram { public static native void glVertexAttrib4NubARB(int index, byte x, byte y, byte z, byte w); - // --------------------------- - public static void glVertexAttrib1ARB(int index, ShortBuffer values) { - nglVertexAttrib1svARB(index, values, values.position()); - } - - private static native void nglVertexAttrib1svARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib1ARB(int index, FloatBuffer values) { - nglVertexAttrib1fvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib1fvARB(int index, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib2ARB(int index, ShortBuffer values) { - assert values.remaining() >= 2: " must have 2 shorts available."; - nglVertexAttrib2svARB(index, values, values.position()); - } - - private static native void nglVertexAttrib2svARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib2ARB(int index, FloatBuffer values) { - assert values.remaining() >= 2: " must have 2 floats available."; - nglVertexAttrib2fvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib2fvARB(int index, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib3ARB(int index, ShortBuffer values) { - assert values.remaining() >= 3: " must have 3 shorts available."; - nglVertexAttrib3svARB(index, values, values.position()); - } - - private static native void nglVertexAttrib3svARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib3ARB(int index, FloatBuffer values) { - assert values.remaining() >= 3: " must have 3 floats available."; - nglVertexAttrib3fvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib3fvARB(int index, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4ARB(int index, ByteBuffer values) { - assert values.remaining() >= 4: " must have 4 bytes available."; - nglVertexAttrib4bvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4bvARB(int index, ByteBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4ARB(int index, ShortBuffer values) { - assert values.remaining() >= 4: " must have 4 shorts available."; - nglVertexAttrib4svARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4svARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4ARB(int index, IntBuffer values) { - assert values.remaining() >= 4: " must have 4 ints available."; - nglVertexAttrib4ivARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4ivARB(int index, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4uARB(int index, ByteBuffer values) { - assert values.remaining() >= 4: " must have 4 bytes available."; - nglVertexAttrib4ubvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4ubvARB(int index, ByteBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4uARB(int index, ShortBuffer values) { - assert values.remaining() >= 4: " must have 4 shorts available."; - nglVertexAttrib4usvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4usvARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4uARB(int index, IntBuffer values) { - assert values.remaining() >= 4: " must have 4 ints available."; - nglVertexAttrib4uivARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4uivARB(int index, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4ARB(int index, FloatBuffer values) { - assert values.remaining() >= 4: " must have 4 floats available."; - nglVertexAttrib4fvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4fvARB(int index, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NARB(int index, ByteBuffer values) { - assert values.remaining() >= 4: " must have 4 bytes available."; - nglVertexAttrib4NbvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NbvARB(int index, ByteBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NARB(int index, ShortBuffer values) { - assert values.remaining() >= 4: " must have 4 shorts available."; - nglVertexAttrib4NsvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NsvARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NARB(int index, IntBuffer values) { - assert values.remaining() >= 4: " must have 4 ints available."; - nglVertexAttrib4NivARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NivARB(int index, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NuARB(int index, ByteBuffer values) { - assert values.remaining() >= 4: " must have 4 bytes available."; - nglVertexAttrib4NubvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NubvARB(int index, ByteBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NuARB(int index, ShortBuffer values) { - assert values.remaining() >= 4: " must have 4 shorts available."; - nglVertexAttrib4NusvARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NusvARB(int index, ShortBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glVertexAttrib4NuARB(int index, IntBuffer values) { - assert values.remaining() >= 4: " must have 4 ints available."; - nglVertexAttrib4NuivARB(index, values, values.position()); - } - - private static native void nglVertexAttrib4NuivARB(int index, IntBuffer values, int valuesOffset); - // --------------------------- - - public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, ByteBuffer buffer) { assert VBOTracker.getVBOArrayStack().getState() == 0: "Cannot use Buffers when VBO is enabled"; nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, normalized, stride, buffer, buffer.position()); diff --git a/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners.java b/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners.java index 0d163241..25bd8f12 100644 --- a/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners.java +++ b/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners.java @@ -158,12 +158,4 @@ public class NVRegisterCombiners { nglGetFinalCombinerInputParameterivNV(variable, pname, piParams, piParams.position()); } private static native void nglGetFinalCombinerInputParameterivNV(int variable, int pname, IntBuffer piParams, int piParams_offset); - public static void glCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { - nglCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); - } - private static native void nglCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); - public static void glGetCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { - nglGetCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); - } - private static native void nglGetCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); } diff --git a/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners2.java b/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners2.java index c344518b..44287cf8 100644 --- a/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners2.java +++ b/src/java/org/lwjgl/opengl/nv/NVRegisterCombiners2.java @@ -39,7 +39,18 @@ */ package org.lwjgl.opengl.nv; +import java.nio.FloatBuffer; + public class NVRegisterCombiners2 { public static final int GL_PER_STAGE_CONSTANTS_NV = 0x8535; + + public static void glCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { + nglCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); + } + private static native void nglCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); + public static void glGetCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { + nglGetCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); + } + private static native void nglGetCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); } diff --git a/src/java/org/lwjgl/opengl/nv/NVTextureCompressionVTC.java b/src/java/org/lwjgl/opengl/nv/NVTextureCompressionVTC.java new file mode 100644 index 00000000..198e5701 --- /dev/null +++ b/src/java/org/lwjgl/opengl/nv/NVTextureCompressionVTC.java @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2002 Lightweight Java Game Library 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 'Light Weight Java Game Library' 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. + */ +/* + * Created by LWJGL. + * User: spasi + * Date: 2004-01-29 + * Time: 3:20:43 pm + */ + +package org.lwjgl.opengl.nv; + +public class NVTextureCompressionVTC { + + /* + * Accepted by the parameter of TexImage3D and + * CompressedTexImage3DARB and the parameter of + * CompressedTexSubImage2DARB: + */ + public static final int COMPRESSED_RGB_S3TC_DXT1_EXT =0x83F0; + public static final int COMPRESSED_RGBA_S3TC_DXT1_EXT =0x83F1; + public static final int COMPRESSED_RGBA_S3TC_DXT3_EXT =0x83F2; + public static final int COMPRESSED_RGBA_S3TC_DXT5_EXT =0x83F3; + +} diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMatrixPalette.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMatrixPalette.cpp index 5a6b9a22..6a60a8eb 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMatrixPalette.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMatrixPalette.cpp @@ -38,6 +38,30 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glCurrentPaletteMatrixARBPROC) (GLint index); +typedef void (APIENTRY * glMatrixIndexubvARBPROC) (GLint size, GLubyte *indices); +typedef void (APIENTRY * glMatrixIndexusvARBPROC) (GLint size, GLushort *indices); +typedef void (APIENTRY * glMatrixIndexuivARBPROC) (GLint size, GLuint *indices); +typedef void (APIENTRY * glMatrixIndexPointerARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); + +static glCurrentPaletteMatrixARBPROC glCurrentPaletteMatrixARB; +static glMatrixIndexubvARBPROC glMatrixIndexubvARB; +static glMatrixIndexusvARBPROC glMatrixIndexusvARB; +static glMatrixIndexuivARBPROC glMatrixIndexuivARB; +static glMatrixIndexPointerARBPROC glMatrixIndexPointerARB; + +void extgl_InitARBMatrixPalette(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_matrix_palette) + return; + glCurrentPaletteMatrixARB = (glCurrentPaletteMatrixARBPROC) extgl_GetProcAddress("glCurrentPaletteMatrixARB"); + glMatrixIndexubvARB = (glMatrixIndexubvARBPROC) extgl_GetProcAddress("glMatrixIndexubvARB"); + glMatrixIndexusvARB = (glMatrixIndexusvARBPROC) extgl_GetProcAddress("glMatrixIndexusvARB"); + glMatrixIndexuivARB = (glMatrixIndexuivARBPROC) extgl_GetProcAddress("glMatrixIndexuivARB"); + glMatrixIndexPointerARB = (glMatrixIndexPointerARBPROC) extgl_GetProcAddress("glMatrixIndexPointerARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_matrix_palette) +} + /* * Class: org.lwjgl.opengl.arb.ARBMatrixPalette * Method: glCurrentPaletteMatrixARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultisample.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultisample.cpp index 174ab3b8..1f76c09b 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultisample.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultisample.cpp @@ -38,6 +38,18 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glSampleCoverageARBPROC) (GLclampf value, GLboolean invert ); + +static glSampleCoverageARBPROC glSampleCoverageARB; + +void extgl_InitARBMultisample(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_multisample) + return; + glSampleCoverageARB = (glSampleCoverageARBPROC) extgl_GetProcAddress("glSampleCoverageARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_multisample) +} + /* * Class: org.lwjgl.opengl.arb.ARBMultisample * Method: glSampleCoverageARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultitexture.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultitexture.cpp index 9eee80a6..8fd7517e 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultitexture.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBMultitexture.cpp @@ -38,6 +38,61 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glActiveTextureARBPROC) (GLenum texture ); +typedef void (APIENTRY * glClientActiveTextureARBPROC) (GLenum texture ); +typedef void (APIENTRY * glMultiTexCoord1fARBPROC) (GLenum target, GLfloat s ); +typedef void (APIENTRY * glMultiTexCoord1iARBPROC) (GLenum target, GLint s ); +typedef void (APIENTRY * glMultiTexCoord1sARBPROC) (GLenum target, GLshort s ); +typedef void (APIENTRY * glMultiTexCoord2fARBPROC) (GLenum target, GLfloat s, GLfloat t ); +typedef void (APIENTRY * glMultiTexCoord2iARBPROC) (GLenum target, GLint s, GLint t ); +typedef void (APIENTRY * glMultiTexCoord2sARBPROC) (GLenum target, GLshort s, GLshort t ); +typedef void (APIENTRY * glMultiTexCoord3fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); +typedef void (APIENTRY * glMultiTexCoord3iARBPROC) (GLenum target, GLint s, GLint t, GLint r ); +typedef void (APIENTRY * glMultiTexCoord3sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r ); +typedef void (APIENTRY * glMultiTexCoord4fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); +typedef void (APIENTRY * glMultiTexCoord4iARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q ); +typedef void (APIENTRY * glMultiTexCoord4sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); + +static glActiveTextureARBPROC glActiveTextureARB; +static glClientActiveTextureARBPROC glClientActiveTextureARB; +static glMultiTexCoord1fARBPROC glMultiTexCoord1fARB; +static glMultiTexCoord1iARBPROC glMultiTexCoord1iARB; +static glMultiTexCoord1sARBPROC glMultiTexCoord1sARB; +static glMultiTexCoord2fARBPROC glMultiTexCoord2fARB; +static glMultiTexCoord2iARBPROC glMultiTexCoord2iARB; +static glMultiTexCoord2sARBPROC glMultiTexCoord2sARB; +static glMultiTexCoord3fARBPROC glMultiTexCoord3fARB; +static glMultiTexCoord3iARBPROC glMultiTexCoord3iARB; +static glMultiTexCoord3sARBPROC glMultiTexCoord3sARB; +static glMultiTexCoord4fARBPROC glMultiTexCoord4fARB; +static glMultiTexCoord4iARBPROC glMultiTexCoord4iARB; +static glMultiTexCoord4sARBPROC glMultiTexCoord4sARB; + +void extgl_InitARBMultitexture(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_multitexture) + return; + glActiveTextureARB = (glActiveTextureARBPROC) extgl_GetProcAddress("glActiveTextureARB"); + glClientActiveTextureARB = (glClientActiveTextureARBPROC) extgl_GetProcAddress("glClientActiveTextureARB"); + + glMultiTexCoord1fARB = (glMultiTexCoord1fARBPROC) extgl_GetProcAddress("glMultiTexCoord1fARB"); + glMultiTexCoord1iARB = (glMultiTexCoord1iARBPROC) extgl_GetProcAddress("glMultiTexCoord1iARB"); + glMultiTexCoord1sARB = (glMultiTexCoord1sARBPROC) extgl_GetProcAddress("glMultiTexCoord1sARB"); + + glMultiTexCoord2fARB = (glMultiTexCoord2fARBPROC) extgl_GetProcAddress("glMultiTexCoord2fARB"); + glMultiTexCoord2iARB = (glMultiTexCoord2iARBPROC) extgl_GetProcAddress("glMultiTexCoord2iARB"); + glMultiTexCoord2sARB = (glMultiTexCoord2sARBPROC) extgl_GetProcAddress("glMultiTexCoord2sARB"); + + glMultiTexCoord3fARB = (glMultiTexCoord3fARBPROC) extgl_GetProcAddress("glMultiTexCoord3fARB"); + glMultiTexCoord3iARB = (glMultiTexCoord3iARBPROC) extgl_GetProcAddress("glMultiTexCoord3iARB"); + glMultiTexCoord3sARB = (glMultiTexCoord3sARBPROC) extgl_GetProcAddress("glMultiTexCoord3sARB"); + + glMultiTexCoord4fARB = (glMultiTexCoord4fARBPROC) extgl_GetProcAddress("glMultiTexCoord4fARB"); + glMultiTexCoord4iARB = (glMultiTexCoord4iARBPROC) extgl_GetProcAddress("glMultiTexCoord4iARB"); + glMultiTexCoord4sARB = (glMultiTexCoord4sARBPROC) extgl_GetProcAddress("glMultiTexCoord4sARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_multitexture) +} + /* * Class: org.lwjgl.opengl.arb.ARBMultitexture * Method: glClientActiveTextureARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBPointParameters.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBPointParameters.cpp index ea5ef5ee..54af8e07 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBPointParameters.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBPointParameters.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glPointParameterfARBPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glPointParameterfvARBPROC) (GLenum pname, GLfloat *params); + +static glPointParameterfARBPROC glPointParameterfARB; +static glPointParameterfvARBPROC glPointParameterfvARB; + +void extgl_InitARBPointParameters(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_point_parameters) + return; + glPointParameterfARB = (glPointParameterfARBPROC) extgl_GetProcAddress("glPointParameterfARB"); + glPointParameterfvARB = (glPointParameterfvARBPROC) extgl_GetProcAddress("glPointParameterfvARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_point_parameters) +} + /* * Class: org.lwjgl.opengl.arb.ARBPointParameters * Method: glPointParameterfARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBProgram.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBProgram.cpp index 18cbbb95..a64ddd47 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBProgram.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBProgram.cpp @@ -38,6 +38,55 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glProgramStringARBPROC) (GLenum target, GLenum format, GLsizei len, const GLvoid *string); +typedef void (APIENTRY * glBindProgramARBPROC) (GLenum target, GLuint program); +typedef void (APIENTRY * glDeleteProgramsARBPROC) (GLsizei n, const GLuint *programs); +typedef void (APIENTRY * glGenProgramsARBPROC) (GLsizei n, GLuint *programs); +typedef void (APIENTRY * glProgramEnvParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glProgramEnvParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); +typedef void (APIENTRY * glProgramLocalParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glProgramLocalParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); +typedef void (APIENTRY * glGetProgramEnvParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); +typedef void (APIENTRY * glGetProgramLocalParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); +typedef void (APIENTRY * glGetProgramivARBPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetProgramStringARBPROC) (GLenum target, GLenum pname, GLvoid *string); +typedef GLboolean (APIENTRY * glIsProgramARBPROC) (GLuint program); + +static glProgramStringARBPROC glProgramStringARB; +static glBindProgramARBPROC glBindProgramARB; +static glDeleteProgramsARBPROC glDeleteProgramsARB; +static glGenProgramsARBPROC glGenProgramsARB; + +static glProgramEnvParameter4fARBPROC glProgramEnvParameter4fARB; +static glProgramEnvParameter4fvARBPROC glProgramEnvParameter4fvARB; +static glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB; +static glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB; +static glGetProgramEnvParameterfvARBPROC glGetProgramEnvParameterfvARB; +static glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB; +static glGetProgramivARBPROC glGetProgramivARB; +static glGetProgramStringARBPROC glGetProgramStringARB; +static glIsProgramARBPROC glIsProgramARB; + +void extgl_InitARBProgram(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_fragment_program) + return; + glProgramStringARB = (glProgramStringARBPROC) extgl_GetProcAddress("glProgramStringARB"); + glBindProgramARB = (glBindProgramARBPROC) extgl_GetProcAddress("glBindProgramARB"); + glDeleteProgramsARB = (glDeleteProgramsARBPROC) extgl_GetProcAddress("glDeleteProgramsARB"); + glGenProgramsARB = (glGenProgramsARBPROC) extgl_GetProcAddress("glGenProgramsARB"); + glProgramEnvParameter4fARB = (glProgramEnvParameter4fARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fARB"); + glProgramEnvParameter4fvARB = (glProgramEnvParameter4fvARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fvARB"); + glProgramLocalParameter4fARB = (glProgramLocalParameter4fARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fARB"); + glProgramLocalParameter4fvARB = (glProgramLocalParameter4fvARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fvARB"); + glGetProgramEnvParameterfvARB = (glGetProgramEnvParameterfvARBPROC) extgl_GetProcAddress("glGetProgramEnvParameterfvARB"); + glGetProgramLocalParameterfvARB = (glGetProgramLocalParameterfvARBPROC) extgl_GetProcAddress("glGetProgramLocalParameterfvARB"); + glGetProgramivARB = (glGetProgramivARBPROC) extgl_GetProcAddress("glGetProgramivARB"); + glGetProgramStringARB = (glGetProgramStringARBPROC) extgl_GetProcAddress("glGetProgramStringARB"); + glIsProgramARB = (glIsProgramARBPROC) extgl_GetProcAddress("glIsProgramARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_fragment_program) +} + /* * Class: org.lwjgl.opengl.arb.ARBProgram * Method: nglProgramStringARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBTextureCompression.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBTextureCompression.cpp index c434bcce..260f5aab 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBTextureCompression.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBTextureCompression.cpp @@ -38,6 +38,36 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glCompressedTexImage1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexImage2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexImage3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glGetCompressedTexImageARBPROC) (GLenum target, GLint lod, GLvoid *img ); + +static glCompressedTexImage3DARBPROC glCompressedTexImage3DARB; +static glCompressedTexImage2DARBPROC glCompressedTexImage2DARB; +static glCompressedTexImage1DARBPROC glCompressedTexImage1DARB; +static glCompressedTexSubImage3DARBPROC glCompressedTexSubImage3DARB; +static glCompressedTexSubImage2DARBPROC glCompressedTexSubImage2DARB; +static glCompressedTexSubImage1DARBPROC glCompressedTexSubImage1DARB; +static glGetCompressedTexImageARBPROC glGetCompressedTexImageARB; + +void extgl_InitARBTextureCompression(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_texture_compression) + return; + glCompressedTexImage3DARB = (glCompressedTexImage3DARBPROC) extgl_GetProcAddress("glCompressedTexImage3DARB"); + glCompressedTexImage2DARB = (glCompressedTexImage2DARBPROC) extgl_GetProcAddress("glCompressedTexImage2DARB"); + glCompressedTexImage1DARB = (glCompressedTexImage1DARBPROC) extgl_GetProcAddress("glCompressedTexImage1DARB"); + glCompressedTexSubImage3DARB = (glCompressedTexSubImage3DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage3DARB"); + glCompressedTexSubImage2DARB = (glCompressedTexSubImage2DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage2DARB"); + glCompressedTexSubImage1DARB = (glCompressedTexSubImage1DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage1DARB"); + glGetCompressedTexImageARB = (glGetCompressedTexImageARBPROC) extgl_GetProcAddress("glGetCompressedTexImageARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_texture_compression) +} + /* * Class: org.lwjgl.opengl.arb.ARBTextureCompression * Method: nglCompressedTexImage1DARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBTransposeMatrix.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBTransposeMatrix.cpp index 5b4d99ee..02391122 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBTransposeMatrix.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBTransposeMatrix.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glLoadTransposeMatrixfARBPROC) (const GLfloat m[16] ); +typedef void (APIENTRY * glMultTransposeMatrixfARBPROC) (const GLfloat m[16] ); + +static glLoadTransposeMatrixfARBPROC glLoadTransposeMatrixfARB; +static glMultTransposeMatrixfARBPROC glMultTransposeMatrixfARB; + +void extgl_InitARBTransposeMatrix(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_transpose_matrix) + return; + glLoadTransposeMatrixfARB = (glLoadTransposeMatrixfARBPROC) extgl_GetProcAddress("glLoadTransposeMatrixfARB"); + glMultTransposeMatrixfARB = (glMultTransposeMatrixfARBPROC) extgl_GetProcAddress("glMultTransposeMatrixfARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_transpose_matrix) +} + /* * Class: org.lwjgl.opengl.arb.ARBTransposeMatrix * Method: nglLoadTransposeMatrixfARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBlend.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBlend.cpp index 3c4aeaf0..a93a7340 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBlend.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBlend.cpp @@ -38,6 +38,42 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glWeightbvARBPROC) (GLint size, GLbyte *weights); +typedef void (APIENTRY * glWeightsvARBPROC) (GLint size, GLshort *weights); +typedef void (APIENTRY * glWeightivARBPROC) (GLint size, GLint *weights); +typedef void (APIENTRY * glWeightfvARBPROC) (GLint size, GLfloat *weights); +typedef void (APIENTRY * glWeightubvARBPROC) (GLint size, GLubyte *weights); +typedef void (APIENTRY * glWeightusvARBPROC) (GLint size, GLushort *weights); +typedef void (APIENTRY * glWeightuivARBPROC) (GLint size, GLuint *weights); +typedef void (APIENTRY * glWeightPointerARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glVertexBlendARBPROC) (GLint count); + +static glWeightbvARBPROC glWeightbvARB; +static glWeightsvARBPROC glWeightsvARB; +static glWeightivARBPROC glWeightivARB; +static glWeightfvARBPROC glWeightfvARB; +static glWeightubvARBPROC glWeightubvARB; +static glWeightusvARBPROC glWeightusvARB; +static glWeightuivARBPROC glWeightuivARB; +static glWeightPointerARBPROC glWeightPointerARB; +static glVertexBlendARBPROC glVertexBlendARB; + +void extgl_InitARBVertexBlend(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_vertex_blend) + return; + glWeightbvARB = (glWeightbvARBPROC) extgl_GetProcAddress("glWeightbvARB"); + glWeightsvARB = (glWeightsvARBPROC) extgl_GetProcAddress("glWeightsvARB"); + glWeightivARB = (glWeightivARBPROC) extgl_GetProcAddress("glWeightivARB"); + glWeightfvARB = (glWeightfvARBPROC) extgl_GetProcAddress("glWeightfvARB"); + glWeightubvARB = (glWeightubvARBPROC) extgl_GetProcAddress("glWeightubvARB"); + glWeightusvARB = (glWeightusvARBPROC) extgl_GetProcAddress("glWeightusvARB"); + glWeightuivARB = (glWeightuivARBPROC) extgl_GetProcAddress("glWeightuivARB"); + glWeightPointerARB = (glWeightPointerARBPROC) extgl_GetProcAddress("glWeightPointerARB"); + glVertexBlendARB = (glVertexBlendARBPROC) extgl_GetProcAddress("glVertexBlendARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_blend) +} + /* * Class: org.lwjgl.opengl.arb.ARBVertexBlend * Method: nglWeightbvARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBufferObject.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBufferObject.cpp index 28229024..d7c889ad 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBufferObject.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexBufferObject.cpp @@ -38,6 +38,51 @@ #include "extgl.h" #include "checkGLerror.h" +typedef int GLintptrARB; +typedef unsigned int GLsizeiptrARB; + +typedef void (APIENTRY * glBindBufferARBPROC) (GLenum target, GLuint buffer); +typedef void (APIENTRY * glDeleteBuffersARBPROC) (GLsizei n, const GLuint *buffers); +typedef void (APIENTRY * glGenBuffersARBPROC) (GLsizei n, GLuint *buffers); +typedef GLboolean (APIENTRY * glIsBufferARBPROC) (GLuint buffer); +typedef void (APIENTRY * glBufferDataARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage); +typedef void (APIENTRY * glBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data); +typedef void (APIENTRY * glGetBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data); +typedef void * (APIENTRY * glMapBufferARBPROC) (GLenum target, GLenum access); +typedef GLboolean (APIENTRY * glUnmapBufferARBPROC) (GLenum target); +typedef void (APIENTRY * glGetBufferParameterivARBPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetBufferPointervARBPROC) (GLenum target, GLenum pname, GLvoid **params); + +static glBindBufferARBPROC glBindBufferARB; +static glDeleteBuffersARBPROC glDeleteBuffersARB; +static glGenBuffersARBPROC glGenBuffersARB; +static glIsBufferARBPROC glIsBufferARB; +static glBufferDataARBPROC glBufferDataARB; +static glBufferSubDataARBPROC glBufferSubDataARB; +static glGetBufferSubDataARBPROC glGetBufferSubDataARB; +static glMapBufferARBPROC glMapBufferARB; +static glUnmapBufferARBPROC glUnmapBufferARB; +static glGetBufferParameterivARBPROC glGetBufferParameterivARB; +static glGetBufferPointervARBPROC glGetBufferPointervARB; + +void extgl_InitARBVertexBufferObject(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_vertex_buffer_object) + return; + glBindBufferARB = (glBindBufferARBPROC) extgl_GetProcAddress("glBindBufferARB"); + glDeleteBuffersARB = (glDeleteBuffersARBPROC) extgl_GetProcAddress("glDeleteBuffersARB"); + glGenBuffersARB = (glGenBuffersARBPROC) extgl_GetProcAddress("glGenBuffersARB"); + glIsBufferARB = (glIsBufferARBPROC) extgl_GetProcAddress("glIsBufferARB"); + glBufferDataARB = (glBufferDataARBPROC) extgl_GetProcAddress("glBufferDataARB"); + glBufferSubDataARB = (glBufferSubDataARBPROC) extgl_GetProcAddress("glBufferSubDataARB"); + glGetBufferSubDataARB = (glGetBufferSubDataARBPROC) extgl_GetProcAddress("glGetBufferSubDataARB"); + glMapBufferARB = (glMapBufferARBPROC) extgl_GetProcAddress("glMapBufferARB"); + glUnmapBufferARB = (glUnmapBufferARBPROC) extgl_GetProcAddress("glUnmapBufferARB"); + glGetBufferParameterivARB = (glGetBufferParameterivARBPROC) extgl_GetProcAddress("glGetBufferParameterivARB"); + glGetBufferPointervARB = (glGetBufferPointervARBPROC) extgl_GetProcAddress("glGetBufferPointervARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_buffer_object) +} + /* * Class: org.lwjgl.opengl.arb.ARBVertexBufferObject * Method: nglBindBufferARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexProgram.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexProgram.cpp index b435b89f..05efebf0 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexProgram.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBVertexProgram.cpp @@ -38,6 +38,83 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glVertexAttrib1sARBPROC) (GLuint index, GLshort x); +typedef void (APIENTRY * glVertexAttrib1fARBPROC) (GLuint index, GLfloat x); +typedef void (APIENTRY * glVertexAttrib2sARBPROC) (GLuint index, GLshort x, GLshort y); +typedef void (APIENTRY * glVertexAttrib2fARBPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (APIENTRY * glVertexAttrib3sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glVertexAttrib3fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glVertexAttrib4sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY * glVertexAttrib4fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glVertexAttrib4NubARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (APIENTRY * glVertexAttrib1svARBPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib1fvARBPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib2svARBPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib2fvARBPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib2dvARBPROC) (GLuint index, const GLdouble *v); +typedef void (APIENTRY * glVertexAttrib3svARBPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib3fvARBPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib3dvARBPROC) (GLuint index, const GLdouble *v); +typedef void (APIENTRY * glVertexAttrib4bvARBPROC) (GLuint index, const GLbyte *v); +typedef void (APIENTRY * glVertexAttrib4svARBPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib4ivARBPROC) (GLuint index, const GLint *v); +typedef void (APIENTRY * glVertexAttrib4ubvARBPROC) (GLuint index, const GLubyte *v); +typedef void (APIENTRY * glVertexAttrib4usvARBPROC) (GLuint index, const GLushort *v); +typedef void (APIENTRY * glVertexAttrib4uivARBPROC) (GLuint index, const GLuint *v); +typedef void (APIENTRY * glVertexAttrib4fvARBPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib4dvARBPROC) (GLuint index, const GLdouble *v); +typedef void (APIENTRY * glVertexAttrib4NbvARBPROC) (GLuint index, const GLbyte *v); +typedef void (APIENTRY * glVertexAttrib4NsvARBPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib4NivARBPROC) (GLuint index, const GLint *v); +typedef void (APIENTRY * glVertexAttrib4NubvARBPROC) (GLuint index, const GLubyte *v); +typedef void (APIENTRY * glVertexAttrib4NusvARBPROC) (GLuint index, const GLushort *v); +typedef void (APIENTRY * glVertexAttrib4NuivARBPROC) (GLuint index, const GLuint *v); +typedef void (APIENTRY * glVertexAttribPointerARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glEnableVertexAttribArrayARBPROC) (GLuint index); +typedef void (APIENTRY * glDisableVertexAttribArrayARBPROC) (GLuint index); +typedef void (APIENTRY * glGetVertexAttribdvARBPROC) (GLuint index, GLenum pname, GLdouble *params); +typedef void (APIENTRY * glGetVertexAttribfvARBPROC) (GLuint index, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetVertexAttribivARBPROC) (GLuint index, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetVertexAttribPointervARBPROC) (GLuint index, GLenum pname, GLvoid **pointer); + +static glVertexAttrib1sARBPROC glVertexAttrib1sARB; +static glVertexAttrib1fARBPROC glVertexAttrib1fARB; +static glVertexAttrib2sARBPROC glVertexAttrib2sARB; +static glVertexAttrib2fARBPROC glVertexAttrib2fARB; +static glVertexAttrib3sARBPROC glVertexAttrib3sARB; +static glVertexAttrib3fARBPROC glVertexAttrib3fARB; +static glVertexAttrib4sARBPROC glVertexAttrib4sARB; +static glVertexAttrib4fARBPROC glVertexAttrib4fARB; +static glVertexAttrib4NubARBPROC glVertexAttrib4NubARB; +static glVertexAttribPointerARBPROC glVertexAttribPointerARB; +static glEnableVertexAttribArrayARBPROC glEnableVertexAttribArrayARB; +static glDisableVertexAttribArrayARBPROC glDisableVertexAttribArrayARB; +static glGetVertexAttribfvARBPROC glGetVertexAttribfvARB; +static glGetVertexAttribivARBPROC glGetVertexAttribivARB; +static glGetVertexAttribPointervARBPROC glGetVertexAttribPointervARB; + +void extgl_InitARBVertexProgram(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_vertex_program) + return; + glVertexAttrib1sARB = (glVertexAttrib1sARBPROC) extgl_GetProcAddress("glVertexAttrib1sARB"); + glVertexAttrib1fARB = (glVertexAttrib1fARBPROC) extgl_GetProcAddress("glVertexAttrib1fARB"); + glVertexAttrib2sARB = (glVertexAttrib2sARBPROC) extgl_GetProcAddress("glVertexAttrib2sARB"); + glVertexAttrib2fARB = (glVertexAttrib2fARBPROC) extgl_GetProcAddress("glVertexAttrib2fARB"); + glVertexAttrib3sARB = (glVertexAttrib3sARBPROC) extgl_GetProcAddress("glVertexAttrib3sARB"); + glVertexAttrib3fARB = (glVertexAttrib3fARBPROC) extgl_GetProcAddress("glVertexAttrib3fARB"); + glVertexAttrib4sARB = (glVertexAttrib4sARBPROC) extgl_GetProcAddress("glVertexAttrib4sARB"); + glVertexAttrib4fARB = (glVertexAttrib4fARBPROC) extgl_GetProcAddress("glVertexAttrib4fARB"); + glVertexAttrib4NubARB = (glVertexAttrib4NubARBPROC) extgl_GetProcAddress("glVertexAttrib4NubARB"); + glVertexAttribPointerARB = (glVertexAttribPointerARBPROC) extgl_GetProcAddress("glVertexAttribPointerARB"); + glEnableVertexAttribArrayARB = (glEnableVertexAttribArrayARBPROC) extgl_GetProcAddress("glEnableVertexAttribArrayARB"); + glDisableVertexAttribArrayARB = (glDisableVertexAttribArrayARBPROC) extgl_GetProcAddress("glDisableVertexAttribArrayARB"); + glGetVertexAttribfvARB = (glGetVertexAttribfvARBPROC) extgl_GetProcAddress("glGetVertexAttribfvARB"); + glGetVertexAttribivARB = (glGetVertexAttribivARBPROC) extgl_GetProcAddress("glGetVertexAttribivARB"); + glGetVertexAttribPointervARB = (glGetVertexAttribPointervARBPROC) extgl_GetProcAddress("glGetVertexAttribPointervARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_program) +} + /* * Class: org.lwjgl.opengl.arb.ARBVertexProgram * Method: glVertexAttrib1sARB @@ -146,253 +223,6 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_glVertexAttrib CHECK_GL_ERROR } -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib1svARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib1svARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib1svARB) - GLshort *values_ptr = (GLshort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib1svARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib1fvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib1fvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib1fvARB) - GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib1fvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib2svARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib2svARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib2svARB) - GLshort *values_ptr = (GLshort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib2svARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib2fvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib2fvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib2fvARB) - GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib2fvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib3svARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib3svARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib3svARB) - GLshort *values_ptr = (GLshort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib3svARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib3fvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib3fvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib3fvARB) - GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib3fvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4bvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4bvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4bvARB) - GLbyte *values_ptr = (GLbyte *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4bvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4svARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4svARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4svARB) - GLshort *values_ptr = (GLshort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4svARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4ivARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4ivARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4ivARB) - GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4ivARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4ubvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4ubvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4ubvARB) - GLubyte *values_ptr = (GLubyte *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4ubvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4usvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4usvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4usvARB) - GLushort *values_ptr = (GLushort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4usvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4uivARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4uivARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4uivARB) - GLuint *values_ptr = (GLuint *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4uivARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4fvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4fvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4fvARB) - GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4fvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NbvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NbvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NbvARB) - GLbyte *values_ptr = (GLbyte *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NbvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NsvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NsvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NsvARB) - GLshort *values_ptr = (GLshort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NsvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NivARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NivARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NivARB) - GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NivARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NubvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NubvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NubvARB) - GLubyte *values_ptr = (GLubyte *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NubvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NusvARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NusvARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NusvARB) - GLushort *values_ptr = (GLushort *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NusvARB(index, values_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.arb.ARBVertexProgram - * Method: nglVertexAttrib4NuivARB - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexProgram_nglVertexAttrib4NuivARB - (JNIEnv * env, jclass clazz, jint index, jobject values, jint valuesOffset) -{ - CHECK_EXISTS(glVertexAttrib4NuivARB) - GLuint *values_ptr = (GLuint *)env->GetDirectBufferAddress(values) + valuesOffset; - glVertexAttrib4NuivARB(index, values_ptr); - CHECK_GL_ERROR -} - /* * Class: org.lwjgl.opengl.arb.ARBVertexProgram * Method: nglVertexAttribPointerARB diff --git a/src/native/common/arb/org_lwjgl_opengl_arb_ARBWindowPos.cpp b/src/native/common/arb/org_lwjgl_opengl_arb_ARBWindowPos.cpp index da7f29a4..1ee1f006 100644 --- a/src/native/common/arb/org_lwjgl_opengl_arb_ARBWindowPos.cpp +++ b/src/native/common/arb/org_lwjgl_opengl_arb_ARBWindowPos.cpp @@ -38,6 +38,33 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glWindowPos2fARBPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY * glWindowPos2iARBPROC) (GLint x, GLint y); +typedef void (APIENTRY * glWindowPos2sARBPROC) (GLshort x, GLshort y); +typedef void (APIENTRY * glWindowPos3fARBPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glWindowPos3iARBPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY * glWindowPos3sARBPROC) (GLshort x, GLshort y, GLshort z); + +static glWindowPos2fARBPROC glWindowPos2fARB; +static glWindowPos2iARBPROC glWindowPos2iARB; +static glWindowPos2sARBPROC glWindowPos2sARB; +static glWindowPos3fARBPROC glWindowPos3fARB; +static glWindowPos3iARBPROC glWindowPos3iARB; +static glWindowPos3sARBPROC glWindowPos3sARB; + +void extgl_InitARBWindowPos(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_window_pos) + return; + glWindowPos2fARB = (glWindowPos2fARBPROC) extgl_GetProcAddress("glWindowPos2fARB"); + glWindowPos2iARB = (glWindowPos2iARBPROC) extgl_GetProcAddress("glWindowPos2iARB"); + glWindowPos2sARB = (glWindowPos2sARBPROC) extgl_GetProcAddress("glWindowPos2sARB"); + glWindowPos3fARB = (glWindowPos3fARBPROC) extgl_GetProcAddress("glWindowPos3fARB"); + glWindowPos3iARB = (glWindowPos3iARBPROC) extgl_GetProcAddress("glWindowPos3iARB"); + glWindowPos3sARB = (glWindowPos3sARBPROC) extgl_GetProcAddress("glWindowPos3sARB"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_window_pos) +} + /* * Class: org.lwjgl.opengl.arb.ARBWindowPos * Method: glWindowPos2fARB diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIElementArray.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIElementArray.cpp index ce871d86..0273a2a1 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIElementArray.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIElementArray.cpp @@ -38,6 +38,24 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glElementPointerATIPROC) (GLenum type, const GLvoid *pointer); +typedef void (APIENTRY * glDrawElementArrayATIPROC) (GLenum mode, GLsizei count); +typedef void (APIENTRY * glDrawRangeElementArrayATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); + +static glElementPointerATIPROC glElementPointerATI; +static glDrawElementArrayATIPROC glDrawElementArrayATI; +static glDrawRangeElementArrayATIPROC glDrawRangeElementArrayATI; + +void extgl_InitATIElementArray(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_element_array) + return; + glElementPointerATI = (glElementPointerATIPROC) extgl_GetProcAddress("glElementPointerATI"); + glDrawElementArrayATI = (glDrawElementArrayATIPROC) extgl_GetProcAddress("glDrawElementArrayATI"); + glDrawRangeElementArrayATI = (glDrawRangeElementArrayATIPROC) extgl_GetProcAddress("glDrawRangeElementArrayATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_element_array) +} + /* * Class: org.lwjgl.opengl.ati.ATIElementArray * Method: nglElementPointerATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIEnvmapBumpmap.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIEnvmapBumpmap.cpp index 676f0a99..c55d5427 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIEnvmapBumpmap.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIEnvmapBumpmap.cpp @@ -38,6 +38,27 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glTexBumpParameterivATIPROC) (GLenum pname, GLint *param); +typedef void (APIENTRY * glTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); +typedef void (APIENTRY * glGetTexBumpParameterivATIPROC) (GLenum pname, GLint *param); +typedef void (APIENTRY * glGetTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); + +static glTexBumpParameterivATIPROC glTexBumpParameterivATI; +static glTexBumpParameterfvATIPROC glTexBumpParameterfvATI; +static glGetTexBumpParameterivATIPROC glGetTexBumpParameterivATI; +static glGetTexBumpParameterfvATIPROC glGetTexBumpParameterfvATI; + +void extgl_InitATIEnvmapBumpmap(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_envmap_bumpmap) + return; + glTexBumpParameterivATI = (glTexBumpParameterivATIPROC) extgl_GetProcAddress("glTexBumpParameterivATI"); + glTexBumpParameterfvATI = (glTexBumpParameterfvATIPROC) extgl_GetProcAddress("glTexBumpParameterfvATI"); + glGetTexBumpParameterivATI = (glGetTexBumpParameterivATIPROC) extgl_GetProcAddress("glGetTexBumpParameterivATI"); + glGetTexBumpParameterfvATI = (glGetTexBumpParameterfvATIPROC) extgl_GetProcAddress("glGetTexBumpParameterfvATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_envmap_bumpmap) +} + /* * Class: org.lwjgl.opengl.ati.ATIEnvmapBumpmap * Method: nglTexBumpParameterfvATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIFragmentShader.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIFragmentShader.cpp index cda20bd3..77b2b37b 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIFragmentShader.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIFragmentShader.cpp @@ -38,6 +38,57 @@ #include "extgl.h" #include "checkGLerror.h" +typedef GLuint (APIENTRY * glGenFragmentShadersATIPROC) (GLuint range); +typedef void (APIENTRY * glBindFragmentShaderATIPROC) (GLuint id); +typedef void (APIENTRY * glDeleteFragmentShaderATIPROC) (GLuint id); +typedef void (APIENTRY * glBeginFragmentShaderATIPROC) (GLvoid); +typedef void (APIENTRY * glEndFragmentShaderATIPROC) (GLvoid); +typedef void (APIENTRY * glPassTexCoordATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); +typedef void (APIENTRY * glSampleMapATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); +typedef void (APIENTRY * glColorFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (APIENTRY * glColorFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (APIENTRY * glColorFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (APIENTRY * glAlphaFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (APIENTRY * glAlphaFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (APIENTRY * glAlphaFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (APIENTRY * glSetFragmentShaderConstantATIPROC) (GLuint dst, const GLfloat *value); + +static glGenFragmentShadersATIPROC glGenFragmentShadersATI; +static glBindFragmentShaderATIPROC glBindFragmentShaderATI; +static glDeleteFragmentShaderATIPROC glDeleteFragmentShaderATI; +static glBeginFragmentShaderATIPROC glBeginFragmentShaderATI; +static glEndFragmentShaderATIPROC glEndFragmentShaderATI; +static glPassTexCoordATIPROC glPassTexCoordATI; +static glSampleMapATIPROC glSampleMapATI; +static glColorFragmentOp1ATIPROC glColorFragmentOp1ATI; +static glColorFragmentOp2ATIPROC glColorFragmentOp2ATI; +static glColorFragmentOp3ATIPROC glColorFragmentOp3ATI; +static glAlphaFragmentOp1ATIPROC glAlphaFragmentOp1ATI; +static glAlphaFragmentOp2ATIPROC glAlphaFragmentOp2ATI; +static glAlphaFragmentOp3ATIPROC glAlphaFragmentOp3ATI; +static glSetFragmentShaderConstantATIPROC glSetFragmentShaderConstantATI; + +void extgl_InitATIFragmentShader(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_fragment_shader) + return; + glGenFragmentShadersATI = (glGenFragmentShadersATIPROC) extgl_GetProcAddress("glGenFragmentShadersATI"); + glBindFragmentShaderATI = (glBindFragmentShaderATIPROC) extgl_GetProcAddress("glBindFragmentShaderATI"); + glDeleteFragmentShaderATI = (glDeleteFragmentShaderATIPROC) extgl_GetProcAddress("glDeleteFragmentShaderATI"); + glBeginFragmentShaderATI = (glBeginFragmentShaderATIPROC) extgl_GetProcAddress("glBeginFragmentShaderATI"); + glEndFragmentShaderATI = (glEndFragmentShaderATIPROC) extgl_GetProcAddress("glEndFragmentShaderATI"); + glPassTexCoordATI = (glPassTexCoordATIPROC) extgl_GetProcAddress("glPassTexCoordATI"); + glSampleMapATI = (glSampleMapATIPROC) extgl_GetProcAddress("glSampleMapATI"); + glColorFragmentOp1ATI = (glColorFragmentOp1ATIPROC) extgl_GetProcAddress("glColorFragmentOp1ATI"); + glColorFragmentOp2ATI = (glColorFragmentOp2ATIPROC) extgl_GetProcAddress("glColorFragmentOp2ATI"); + glColorFragmentOp3ATI = (glColorFragmentOp3ATIPROC) extgl_GetProcAddress("glColorFragmentOp3ATI"); + glAlphaFragmentOp1ATI = (glAlphaFragmentOp1ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp1ATI"); + glAlphaFragmentOp2ATI = (glAlphaFragmentOp2ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp2ATI"); + glAlphaFragmentOp3ATI = (glAlphaFragmentOp3ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp3ATI"); + glSetFragmentShaderConstantATI = (glSetFragmentShaderConstantATIPROC) extgl_GetProcAddress("glSetFragmentShaderConstantATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_fragment_shader) +} + /* * Class: org.lwjgl.opengl.ati.ATIFragmentShader * Method: glGenFragmentShadersATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIPnTriangles.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIPnTriangles.cpp index ab5e779d..4e535700 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIPnTriangles.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIPnTriangles.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glPNTrianglesiATIPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glPNTrianglesfATIPROC) (GLenum pname, GLfloat param); + +static glPNTrianglesiATIPROC glPNTrianglesiATI; +static glPNTrianglesfATIPROC glPNTrianglesfATI; + +void extgl_InitATIPNTriangles(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_pn_triangles) + return; + glPNTrianglesiATI = (glPNTrianglesiATIPROC) extgl_GetProcAddress("glPNTrianglesiATI"); + glPNTrianglesfATI = (glPNTrianglesfATIPROC) extgl_GetProcAddress("glPNTrianglesfATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_pn_triangles) +} + /* * Class: org.lwjgl.opengl.ati.ATIPnTriangles * Method: glPNTrianglesfATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATISeparateStencil.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATISeparateStencil.cpp index a10a99c8..ea9fd494 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATISeparateStencil.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATISeparateStencil.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glStencilOpSeparateATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); +typedef void (APIENTRY * glStencilFuncSeparateATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); + +static glStencilOpSeparateATIPROC glStencilOpSeparateATI; +static glStencilFuncSeparateATIPROC glStencilFuncSeparateATI; + +void extgl_InitATISeparateStencil(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_separate_stencil) + return; + glStencilOpSeparateATI = (glStencilOpSeparateATIPROC)extgl_GetProcAddress("glStencilOpSeparateATI"); + glStencilFuncSeparateATI = (glStencilFuncSeparateATIPROC)extgl_GetProcAddress("glStencilFuncSeparateATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_separate_stencil) +} + /* * Class: org.lwjgl.opengl.ati.ATISeparateStencil * Method: glStencilOpSeparateATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexArrayObject.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexArrayObject.cpp index ae63153e..91c6cd83 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexArrayObject.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexArrayObject.cpp @@ -38,6 +38,51 @@ #include "extgl.h" #include "checkGLerror.h" +typedef GLuint (APIENTRY * glNewObjectBufferATIPROC) (GLsizei size, const GLvoid *pointer, GLenum usage); +typedef GLboolean (APIENTRY * glIsObjectBufferATIPROC) (GLuint buffer); +typedef void (APIENTRY * glUpdateObjectBufferATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve); +typedef void (APIENTRY * glGetObjectBufferfvATIPROC) (GLuint buffer, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetObjectBufferivATIPROC) (GLuint buffer, GLenum pname, GLint *params); +typedef void (APIENTRY * glFreeObjectBufferATIPROC) (GLuint buffer); +typedef void (APIENTRY * glArrayObjectATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); +typedef void (APIENTRY * glGetArrayObjectfvATIPROC) (GLenum array, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetArrayObjectivATIPROC) (GLenum array, GLenum pname, GLint *params); +typedef void (APIENTRY * glVariantArrayObjectATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); +typedef void (APIENTRY * glGetVariantArrayObjectfvATIPROC) (GLuint id, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetVariantArrayObjectivATIPROC) (GLuint id, GLenum pname, GLint *params); + +static glNewObjectBufferATIPROC glNewObjectBufferATI; +static glIsObjectBufferATIPROC glIsObjectBufferATI; +static glUpdateObjectBufferATIPROC glUpdateObjectBufferATI; +static glGetObjectBufferfvATIPROC glGetObjectBufferfvATI; +static glGetObjectBufferivATIPROC glGetObjectBufferivATI; +static glFreeObjectBufferATIPROC glFreeObjectBufferATI; +static glArrayObjectATIPROC glArrayObjectATI; +static glGetArrayObjectfvATIPROC glGetArrayObjectfvATI; +static glGetArrayObjectivATIPROC glGetArrayObjectivATI; +static glVariantArrayObjectATIPROC glVariantArrayObjectATI; +static glGetVariantArrayObjectfvATIPROC glGetVariantArrayObjectfvATI; +static glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI; + +void extgl_InitATIVertexArrayObject(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_vertex_array_object) + return; + glNewObjectBufferATI = (glNewObjectBufferATIPROC) extgl_GetProcAddress("glNewObjectBufferATI"); + glIsObjectBufferATI = (glIsObjectBufferATIPROC) extgl_GetProcAddress("glIsObjectBufferATI"); + glUpdateObjectBufferATI = (glUpdateObjectBufferATIPROC) extgl_GetProcAddress("glUpdateObjectBufferATI"); + glGetObjectBufferfvATI = (glGetObjectBufferfvATIPROC) extgl_GetProcAddress("glGetObjectBufferfvATI"); + glGetObjectBufferivATI = (glGetObjectBufferivATIPROC) extgl_GetProcAddress("glGetObjectBufferivATI"); + glFreeObjectBufferATI = (glFreeObjectBufferATIPROC) extgl_GetProcAddress("glFreeObjectBufferATI"); + glArrayObjectATI = (glArrayObjectATIPROC) extgl_GetProcAddress("glArrayObjectATI"); + glGetArrayObjectfvATI = (glGetArrayObjectfvATIPROC) extgl_GetProcAddress("glGetArrayObjectfvATI"); + glGetArrayObjectivATI = (glGetArrayObjectivATIPROC) extgl_GetProcAddress("glGetArrayObjectivATI"); + glVariantArrayObjectATI = (glVariantArrayObjectATIPROC) extgl_GetProcAddress("glVariantArrayObjectATI"); + glGetVariantArrayObjectfvATI = (glGetVariantArrayObjectfvATIPROC) extgl_GetProcAddress("glGetVariantArrayObjectfvATI"); + glGetVariantArrayObjectivATI = (glGetVariantArrayObjectivATIPROC) extgl_GetProcAddress("glGetVariantArrayObjectivATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_vertex_array_object) +} + /* * Class: org.lwjgl.opengl.ati.ATIVertexArrayObject * Method: nglNewObjectBufferATI diff --git a/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexStreams.cpp b/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexStreams.cpp index b97d9ef2..b7feee6b 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexStreams.cpp +++ b/src/native/common/ati/org_lwjgl_opengl_ati_ATIVertexStreams.cpp @@ -38,6 +38,72 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glClientActiveVertexStreamATIPROC) (GLenum stream); +typedef void (APIENTRY * glVertexBlendEnviATIPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glVertexBlendEnvfATIPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glVertexStream1sATIPROC) (GLenum stream, GLshort x); +typedef void (APIENTRY * glVertexStream1iATIPROC) (GLenum stream, GLint x); +typedef void (APIENTRY * glVertexStream1fATIPROC) (GLenum stream, GLfloat x); +typedef void (APIENTRY * glVertexStream2sATIPROC) (GLenum stream, GLshort x, GLshort y); +typedef void (APIENTRY * glVertexStream2iATIPROC) (GLenum stream, GLint x, GLint y); +typedef void (APIENTRY * glVertexStream2fATIPROC) (GLenum stream, GLfloat x, GLfloat y); +typedef void (APIENTRY * glVertexStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glVertexStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (APIENTRY * glVertexStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glVertexStream4sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY * glVertexStream4iATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY * glVertexStream4fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glNormalStream3bATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); +typedef void (APIENTRY * glNormalStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glNormalStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (APIENTRY * glNormalStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); + +static glClientActiveVertexStreamATIPROC glClientActiveVertexStreamATI; +static glVertexBlendEnviATIPROC glVertexBlendEnviATI; +static glVertexBlendEnvfATIPROC glVertexBlendEnvfATI; +static glVertexStream1sATIPROC glVertexStream1sATI; +static glVertexStream1iATIPROC glVertexStream1iATI; +static glVertexStream1fATIPROC glVertexStream1fATI; +static glVertexStream2sATIPROC glVertexStream2sATI; +static glVertexStream2iATIPROC glVertexStream2iATI; +static glVertexStream2fATIPROC glVertexStream2fATI; +static glVertexStream3sATIPROC glVertexStream3sATI; +static glVertexStream3iATIPROC glVertexStream3iATI; +static glVertexStream3fATIPROC glVertexStream3fATI; +static glVertexStream4sATIPROC glVertexStream4sATI; +static glVertexStream4iATIPROC glVertexStream4iATI; +static glVertexStream4fATIPROC glVertexStream4fATI; +static glNormalStream3bATIPROC glNormalStream3bATI; +static glNormalStream3sATIPROC glNormalStream3sATI; +static glNormalStream3iATIPROC glNormalStream3iATI; +static glNormalStream3fATIPROC glNormalStream3fATI; + +void extgl_InitATIVertexStreams(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ATI_vertex_streams) + return; + glClientActiveVertexStreamATI = (glClientActiveVertexStreamATIPROC) extgl_GetProcAddress("glClientActiveVertexStreamATI"); + glVertexBlendEnviATI = (glVertexBlendEnviATIPROC) extgl_GetProcAddress("glVertexBlendEnviATI"); + glVertexBlendEnvfATI = (glVertexBlendEnvfATIPROC) extgl_GetProcAddress("glVertexBlendEnvfATI"); + glVertexStream1sATI = (glVertexStream1sATIPROC) extgl_GetProcAddress("glVertexStream1sATI"); + glVertexStream1iATI = (glVertexStream1iATIPROC) extgl_GetProcAddress("glVertexStream1iATI"); + glVertexStream1fATI = (glVertexStream1fATIPROC) extgl_GetProcAddress("glVertexStream1fATI"); + glVertexStream2sATI = (glVertexStream2sATIPROC) extgl_GetProcAddress("glVertexStream2sATI"); + glVertexStream2iATI = (glVertexStream2iATIPROC) extgl_GetProcAddress("glVertexStream2iATI"); + glVertexStream2fATI = (glVertexStream2fATIPROC) extgl_GetProcAddress("glVertexStream2fATI"); + glVertexStream3sATI = (glVertexStream3sATIPROC) extgl_GetProcAddress("glVertexStream3sATI"); + glVertexStream3iATI = (glVertexStream3iATIPROC) extgl_GetProcAddress("glVertexStream3iATI"); + glVertexStream3fATI = (glVertexStream3fATIPROC) extgl_GetProcAddress("glVertexStream3fATI"); + glVertexStream4sATI = (glVertexStream4sATIPROC) extgl_GetProcAddress("glVertexStream4sATI"); + glVertexStream4iATI = (glVertexStream4iATIPROC) extgl_GetProcAddress("glVertexStream4iATI"); + glVertexStream4fATI = (glVertexStream4fATIPROC) extgl_GetProcAddress("glVertexStream4fATI"); + glNormalStream3bATI = (glNormalStream3bATIPROC) extgl_GetProcAddress("glNormalStream3bATI"); + glNormalStream3sATI = (glNormalStream3sATIPROC) extgl_GetProcAddress("glNormalStream3sATI"); + glNormalStream3iATI = (glNormalStream3iATIPROC) extgl_GetProcAddress("glNormalStream3iATI"); + glNormalStream3fATI = (glNormalStream3fATIPROC) extgl_GetProcAddress("glNormalStream3fATI"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_vertex_streams) +} + /* * Class: org.lwjgl.opengl.ati.ATIVertexStreams * Method: glVertexStream1fATI diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTBlendFuncSeparate.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTBlendFuncSeparate.cpp index 381f4f54..b42fb887 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTBlendFuncSeparate.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTBlendFuncSeparate.cpp @@ -38,6 +38,18 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glBlendFuncSeparateEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); + +static glBlendFuncSeparateEXTPROC glBlendFuncSeparateEXT; + +void extgl_InitEXTBlendFuncSeparate(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_blend_func_separate) + return; + glBlendFuncSeparateEXT = (glBlendFuncSeparateEXTPROC) extgl_GetProcAddress("glBlendFuncSeparateEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_blend_func_separate) +} + /* * Class: org.lwjgl.opengl.ext.EXTBlendFuncSeparate * Method: glBlendFuncSeparateEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTCompiledVertexArray.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTCompiledVertexArray.cpp index 796bdcd2..1eebf1e5 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTCompiledVertexArray.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTCompiledVertexArray.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glLockArraysEXTPROC) (GLint first, GLsizei count); +typedef void (APIENTRY * glUnlockArraysEXTPROC) (); + +static glLockArraysEXTPROC glLockArraysEXT; +static glUnlockArraysEXTPROC glUnlockArraysEXT; + +void extgl_InitEXTCompiledVertexArray(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_compiled_vertex_array) + return; + glLockArraysEXT = (glLockArraysEXTPROC) extgl_GetProcAddress("glLockArraysEXT"); + glUnlockArraysEXT = (glUnlockArraysEXTPROC) extgl_GetProcAddress("glUnlockArraysEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_compiled_vertex_array) +} + /* * Class: org.lwjgl.opengl.ext.EXTCompiledVertexArray * Method: glLockArraysEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTDrawRangeElements.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTDrawRangeElements.cpp index e341fb4c..095d1748 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTDrawRangeElements.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTDrawRangeElements.cpp @@ -38,6 +38,18 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glDrawRangeElementsEXTPROC) ( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); + +static glDrawRangeElementsEXTPROC glDrawRangeElementsEXT; + +void extgl_InitEXTDrawRangeElements(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_draw_range_elements) + return; + glDrawRangeElementsEXT = (glDrawRangeElementsEXTPROC) extgl_GetProcAddress("glDrawRangeElementsEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_draw_range_elements) +} + /* * Class: org.lwjgl.opengl.ext.EXTDrawRangeElements * Method: nglDrawRangeElementsEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTFogCoord.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTFogCoord.cpp index 55b51c11..9569856b 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTFogCoord.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTFogCoord.cpp @@ -38,6 +38,24 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glFogCoordfEXTPROC) (GLfloat coord); +typedef void (APIENTRY * glFogCoordfvEXTPROC) (const GLfloat *coord); +typedef void (APIENTRY * glFogCoordPointerEXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); + +static glFogCoordfEXTPROC glFogCoordfEXT; +static glFogCoordfvEXTPROC glFogCoordfvEXT; +static glFogCoordPointerEXTPROC glFogCoordPointerEXT; + +void extgl_InitEXTFogCoord(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_fog_coord) + return; + glFogCoordfEXT = (glFogCoordfEXTPROC) extgl_GetProcAddress("glFogCoordfEXT"); + glFogCoordfvEXT = (glFogCoordfvEXTPROC) extgl_GetProcAddress("glFogCoordfvEXT"); + glFogCoordPointerEXT = (glFogCoordPointerEXTPROC) extgl_GetProcAddress("glFogCoordPointerEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_fog_coord) +} + /* * Class: org.lwjgl.opengl.ext.EXTFogCoord * Method: glFogCoordfEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTMultiDrawArrays.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTMultiDrawArrays.cpp index b5f801ad..574ada72 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTMultiDrawArrays.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTMultiDrawArrays.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glMultiDrawArraysEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); +typedef void (APIENTRY * glMultiDrawElementsEXTPROC) (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount); + +static glMultiDrawArraysEXTPROC glMultiDrawArraysEXT; +static glMultiDrawElementsEXTPROC glMultiDrawElementsEXT; + +void extgl_InitEXTMultiDrawArrays(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_multi_draw_arrays) + return; + glMultiDrawArraysEXT = (glMultiDrawArraysEXTPROC) extgl_GetProcAddress("glMultiDrawArraysEXT"); + glMultiDrawElementsEXT = (glMultiDrawElementsEXTPROC) extgl_GetProcAddress("glMultiDrawElementsEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_multi_draw_arrays) +} + /* * Class: org.lwjgl.opengl.ext.EXTMultiDrawArrays * Method: nglMultiDrawArraysEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTPointParameters.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTPointParameters.cpp index 394574e0..f7065a49 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTPointParameters.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTPointParameters.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glPointParameterfEXTPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glPointParameterfvEXTPROC) (GLenum pname, const GLfloat *params); + +static glPointParameterfEXTPROC glPointParameterfEXT; +static glPointParameterfvEXTPROC glPointParameterfvEXT; + +void extgl_InitEXTPointParameters(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_point_parameters) + return; + glPointParameterfEXT = (glPointParameterfEXTPROC) extgl_GetProcAddress("glPointParameterfEXT"); + glPointParameterfvEXT = (glPointParameterfvEXTPROC) extgl_GetProcAddress("glPointParameterfvEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_point_parameters) +} + /* * Class: org.lwjgl.opengl.ext.EXTPointParameters * Method: glPointParameterfEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTSecondaryColor.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTSecondaryColor.cpp index 04c0b3d1..ebd39fe3 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTSecondaryColor.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTSecondaryColor.cpp @@ -38,6 +38,39 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glSecondaryColor3bEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (APIENTRY * glSecondaryColor3fEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY * glSecondaryColor3iEXTPROC) (GLint red, GLint green, GLint blue); +typedef void (APIENTRY * glSecondaryColor3sEXTPROC) (GLshort red, GLshort green, GLshort blue); +typedef void (APIENTRY * glSecondaryColor3ubEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY * glSecondaryColor3uiEXTPROC) (GLuint red, GLuint green, GLuint blue); +typedef void (APIENTRY * glSecondaryColor3usEXTPROC) (GLushort red, GLushort green, GLushort blue); +typedef void (APIENTRY * glSecondaryColorPointerEXTPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); + +static glSecondaryColor3bEXTPROC glSecondaryColor3bEXT; +static glSecondaryColor3fEXTPROC glSecondaryColor3fEXT; +static glSecondaryColor3iEXTPROC glSecondaryColor3iEXT; +static glSecondaryColor3sEXTPROC glSecondaryColor3sEXT; +static glSecondaryColor3ubEXTPROC glSecondaryColor3ubEXT; +static glSecondaryColor3uiEXTPROC glSecondaryColor3uiEXT; +static glSecondaryColor3usEXTPROC glSecondaryColor3usEXT; +static glSecondaryColorPointerEXTPROC glSecondaryColorPointerEXT; + +void extgl_InitEXTSecondaryColor(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_secondary_color) + return; + glSecondaryColor3bEXT = (glSecondaryColor3bEXTPROC) extgl_GetProcAddress("glSecondaryColor3bEXT"); + glSecondaryColor3fEXT = (glSecondaryColor3fEXTPROC) extgl_GetProcAddress("glSecondaryColor3fEXT"); + glSecondaryColor3iEXT = (glSecondaryColor3iEXTPROC) extgl_GetProcAddress("glSecondaryColor3iEXT"); + glSecondaryColor3sEXT = (glSecondaryColor3sEXTPROC) extgl_GetProcAddress("glSecondaryColor3sEXT"); + glSecondaryColor3ubEXT = (glSecondaryColor3ubEXTPROC) extgl_GetProcAddress("glSecondaryColor3ubEXT"); + glSecondaryColor3uiEXT = (glSecondaryColor3uiEXTPROC) extgl_GetProcAddress("glSecondaryColor3uiEXT"); + glSecondaryColor3usEXT = (glSecondaryColor3usEXTPROC) extgl_GetProcAddress("glSecondaryColor3usEXT"); + glSecondaryColorPointerEXT = (glSecondaryColorPointerEXTPROC) extgl_GetProcAddress("glSecondaryColorPointerEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_secondary_color) +} + /* * Class: org.lwjgl.opengl.ext.EXTSecondaryColor * Method: glSecondaryColor3bEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTStencilTwoSide.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTStencilTwoSide.cpp index 69ad5a6d..0b823d15 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTStencilTwoSide.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTStencilTwoSide.cpp @@ -38,6 +38,18 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glActiveStencilFaceEXTPROC) (GLenum face); + +static glActiveStencilFaceEXTPROC glActiveStencilFaceEXT; + +void extgl_InitEXTStencilTwoSide(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_stencil_two_side) + return; + glActiveStencilFaceEXT = (glActiveStencilFaceEXTPROC) extgl_GetProcAddress("glActiveStencilFaceEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_stencil_two_side) +} + /* * Class: org.lwjgl.opengl.ext.EXTStencilTwoSide * Method: glActiveStencilFaceEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexShader.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexShader.cpp index 33cbb418..5350fd24 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexShader.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexShader.cpp @@ -38,6 +38,141 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glBeginVertexShaderEXTPROC) (); +typedef void (APIENTRY * glEndVertexShaderEXTPROC) (); +typedef void (APIENTRY * glBindVertexShaderEXTPROC) (GLuint id); +typedef GLuint (APIENTRY * glGenVertexShadersEXTPROC) (GLuint range); +typedef void (APIENTRY * glDeleteVertexShaderEXTPROC) (GLuint id); +typedef void (APIENTRY * glShaderOp1EXTPROC) (GLenum op, GLuint res, GLuint arg1); +typedef void (APIENTRY * glShaderOp2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); +typedef void (APIENTRY * glShaderOp3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); +typedef void (APIENTRY * glSwizzleEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); +typedef void (APIENTRY * glWriteMaskEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); +typedef void (APIENTRY * glInsertComponentEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef void (APIENTRY * glExtractComponentEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef GLuint (APIENTRY * glGenSymbolsEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); +typedef void (APIENTRY * glSetInvariantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); +typedef void (APIENTRY * glSetLocalConstantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); +typedef void (APIENTRY * glVariantbvEXTPROC) (GLuint id, GLbyte *addr); +typedef void (APIENTRY * glVariantsvEXTPROC) (GLuint id, GLshort *addr); +typedef void (APIENTRY * glVariantivEXTPROC) (GLuint id, GLint *addr); +typedef void (APIENTRY * glVariantfvEXTPROC) (GLuint id, GLfloat *addr); +typedef void (APIENTRY * glVariantdvEXTPROC) (GLuint id, GLdouble *addr); +typedef void (APIENTRY * glVariantubvEXTPROC) (GLuint id, GLubyte *addr); +typedef void (APIENTRY * glVariantusvEXTPROC) (GLuint id, GLushort *addr); +typedef void (APIENTRY * glVariantuivEXTPROC) (GLuint id, GLuint *addr); +typedef void (APIENTRY * glVariantPointerEXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid *addr); +typedef void (APIENTRY * glEnableVariantClientStateEXTPROC) (GLuint id); +typedef void (APIENTRY * glDisableVariantClientStateEXTPROC) (GLuint id); +typedef GLuint (APIENTRY * glBindLightParameterEXTPROC) (GLenum light, GLenum value); +typedef GLuint (APIENTRY * glBindMaterialParameterEXTPROC) (GLenum face, GLenum value); +typedef GLuint (APIENTRY * glBindTexGenParameterEXTPROC) (GLenum unit, GLenum coord, GLenum value); +typedef GLuint (APIENTRY * glBindTextureUnitParameterEXTPROC) (GLenum unit, GLenum value); +typedef GLuint (APIENTRY * glBindParameterEXTPROC) (GLenum value); +typedef GLboolean (APIENTRY * glIsVariantEnabledEXTPROC) (GLuint id, GLenum cap); +typedef void (APIENTRY * glGetVariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (APIENTRY * glGetVariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (APIENTRY * glGetVariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (APIENTRY * glGetVariantPointervEXTPROC) (GLuint id, GLenum value, GLvoid **data); +typedef void (APIENTRY * glGetInvariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (APIENTRY * glGetInvariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (APIENTRY * glGetInvariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (APIENTRY * glGetLocalConstantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); +typedef void (APIENTRY * glGetLocalConstantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); +typedef void (APIENTRY * glGetLocalConstantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); + +static glBeginVertexShaderEXTPROC glBeginVertexShaderEXT; +static glEndVertexShaderEXTPROC glEndVertexShaderEXT; +static glBindVertexShaderEXTPROC glBindVertexShaderEXT; +static glGenVertexShadersEXTPROC glGenVertexShadersEXT; +static glDeleteVertexShaderEXTPROC glDeleteVertexShaderEXT; +static glShaderOp1EXTPROC glShaderOp1EXT; +static glShaderOp2EXTPROC glShaderOp2EXT; +static glShaderOp3EXTPROC glShaderOp3EXT; +static glSwizzleEXTPROC glSwizzleEXT; +static glWriteMaskEXTPROC glWriteMaskEXT; +static glInsertComponentEXTPROC glInsertComponentEXT; +static glExtractComponentEXTPROC glExtractComponentEXT; +static glGenSymbolsEXTPROC glGenSymbolsEXT; +static glSetInvariantEXTPROC glSetInvariantEXT; +static glSetLocalConstantEXTPROC glSetLocalConstantEXT; +static glVariantbvEXTPROC glVariantbvEXT; +static glVariantsvEXTPROC glVariantsvEXT; +static glVariantivEXTPROC glVariantivEXT; +static glVariantfvEXTPROC glVariantfvEXT; +static glVariantdvEXTPROC glVariantdvEXT; +static glVariantubvEXTPROC glVariantubvEXT; +static glVariantusvEXTPROC glVariantusvEXT; +static glVariantuivEXTPROC glVariantuivEXT; +static glVariantPointerEXTPROC glVariantPointerEXT; +static glEnableVariantClientStateEXTPROC glEnableVariantClientStateEXT; +static glDisableVariantClientStateEXTPROC glDisableVariantClientStateEXT; +static glBindLightParameterEXTPROC glBindLightParameterEXT; +static glBindMaterialParameterEXTPROC glBindMaterialParameterEXT; +static glBindTexGenParameterEXTPROC glBindTexGenParameterEXT; +static glBindTextureUnitParameterEXTPROC glBindTextureUnitParameterEXT; +static glBindParameterEXTPROC glBindParameterEXT; +static glIsVariantEnabledEXTPROC glIsVariantEnabledEXT; +static glGetVariantBooleanvEXTPROC glGetVariantBooleanvEXT; +static glGetVariantIntegervEXTPROC glGetVariantIntegervEXT; +static glGetVariantFloatvEXTPROC glGetVariantFloatvEXT; +static glGetVariantPointervEXTPROC glGetVariantPointervEXT; +static glGetInvariantBooleanvEXTPROC glGetInvariantBooleanvEXT; +static glGetInvariantIntegervEXTPROC glGetInvariantIntegervEXT; +static glGetInvariantFloatvEXTPROC glGetInvariantFloatvEXT; +static glGetLocalConstantBooleanvEXTPROC glGetLocalConstantBooleanvEXT; +static glGetLocalConstantIntegervEXTPROC glGetLocalConstantIntegervEXT; +static glGetLocalConstantFloatvEXTPROC glGetLocalConstantFloatvEXT; + +void extgl_InitEXTVertexShader(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_vertex_shader) + return; + glBeginVertexShaderEXT = (glBeginVertexShaderEXTPROC) extgl_GetProcAddress("glBeginVertexShaderEXT"); + glEndVertexShaderEXT = (glEndVertexShaderEXTPROC) extgl_GetProcAddress("glEndVertexShaderEXT"); + glBindVertexShaderEXT = (glBindVertexShaderEXTPROC) extgl_GetProcAddress("glBindVertexShaderEXT"); + glGenVertexShadersEXT = (glGenVertexShadersEXTPROC) extgl_GetProcAddress("glGenVertexShadersEXT"); + glDeleteVertexShaderEXT = (glDeleteVertexShaderEXTPROC) extgl_GetProcAddress("glDeleteVertexShaderEXT"); + glShaderOp1EXT = (glShaderOp1EXTPROC) extgl_GetProcAddress("glShaderOp1EXT"); + glShaderOp2EXT = (glShaderOp2EXTPROC) extgl_GetProcAddress("glShaderOp2EXT"); + glShaderOp3EXT = (glShaderOp3EXTPROC) extgl_GetProcAddress("glShaderOp3EXT"); + glSwizzleEXT = (glSwizzleEXTPROC) extgl_GetProcAddress("glSwizzleEXT"); + glWriteMaskEXT = (glWriteMaskEXTPROC) extgl_GetProcAddress("glWriteMaskEXT"); + glInsertComponentEXT = (glInsertComponentEXTPROC) extgl_GetProcAddress("glInsertComponentEXT"); + glExtractComponentEXT = (glExtractComponentEXTPROC) extgl_GetProcAddress("glExtractComponentEXT"); + glGenSymbolsEXT = (glGenSymbolsEXTPROC) extgl_GetProcAddress("glGenSymbolsEXT"); + glSetInvariantEXT = (glSetInvariantEXTPROC) extgl_GetProcAddress("glSetInvarianceEXT"); + glSetLocalConstantEXT = (glSetLocalConstantEXTPROC) extgl_GetProcAddress("glSetLocalConstantEXT"); + glVariantbvEXT = (glVariantbvEXTPROC) extgl_GetProcAddress("glVariantbvEXT"); + glVariantsvEXT = (glVariantsvEXTPROC) extgl_GetProcAddress("glVariantsvEXT"); + glVariantivEXT = (glVariantivEXTPROC) extgl_GetProcAddress("glVariantivEXT"); + glVariantfvEXT = (glVariantfvEXTPROC) extgl_GetProcAddress("glVariantfvEXT"); + glVariantdvEXT = (glVariantdvEXTPROC) extgl_GetProcAddress("glVariantdvEXT"); + glVariantubvEXT = (glVariantubvEXTPROC) extgl_GetProcAddress("glVariantubvEXT"); + glVariantusvEXT = (glVariantusvEXTPROC) extgl_GetProcAddress("glVariantusvEXT"); + glVariantuivEXT = (glVariantuivEXTPROC) extgl_GetProcAddress("glVariantuivEXT"); + glVariantPointerEXT = (glVariantPointerEXTPROC) extgl_GetProcAddress("glVariantPointerEXT"); + glEnableVariantClientStateEXT = (glEnableVariantClientStateEXTPROC) extgl_GetProcAddress("glEnableVariantClientStateEXT"); + glDisableVariantClientStateEXT = (glDisableVariantClientStateEXTPROC) extgl_GetProcAddress("glDisableVariantClientStateEXT"); + glBindLightParameterEXT = (glBindLightParameterEXTPROC) extgl_GetProcAddress("glBindLightParameterEXT"); + glBindMaterialParameterEXT = (glBindMaterialParameterEXTPROC) extgl_GetProcAddress("glBindMaterialParameterEXT"); + glBindTexGenParameterEXT = (glBindTexGenParameterEXTPROC) extgl_GetProcAddress("glBindTexGenParameterEXT"); + glBindTextureUnitParameterEXT = (glBindTextureUnitParameterEXTPROC) extgl_GetProcAddress("glBindTextureUnitParameterEXT"); + glBindParameterEXT = (glBindParameterEXTPROC) extgl_GetProcAddress("glBindParameterEXT"); + glIsVariantEnabledEXT = (glIsVariantEnabledEXTPROC) extgl_GetProcAddress("glIsVariantEnabledEXT"); + glGetVariantBooleanvEXT = (glGetVariantBooleanvEXTPROC) extgl_GetProcAddress("glGetVariantBooleanvEXT"); + glGetVariantIntegervEXT = (glGetVariantIntegervEXTPROC) extgl_GetProcAddress("glGetVariantIntegervEXT"); + glGetVariantFloatvEXT = (glGetVariantFloatvEXTPROC) extgl_GetProcAddress("glGetVariantFloatvEXT"); + glGetVariantPointervEXT = (glGetVariantPointervEXTPROC) extgl_GetProcAddress("glGetVariantPointervEXT"); + glGetInvariantBooleanvEXT = (glGetInvariantBooleanvEXTPROC) extgl_GetProcAddress("glGetInvariantBooleanvEXT"); + glGetInvariantIntegervEXT = (glGetInvariantIntegervEXTPROC) extgl_GetProcAddress("glGetInvariantIntegervEXT"); + glGetInvariantFloatvEXT = (glGetInvariantFloatvEXTPROC) extgl_GetProcAddress("glGetInvariantFloatvEXT"); + glGetLocalConstantBooleanvEXT = (glGetLocalConstantBooleanvEXTPROC) extgl_GetProcAddress("glGetLocalConstantBooleanvEXT"); + glGetLocalConstantIntegervEXT = (glGetLocalConstantIntegervEXTPROC) extgl_GetProcAddress("glGetLocalConstantIntegervEXT"); + glGetLocalConstantFloatvEXT = (glGetLocalConstantFloatvEXTPROC) extgl_GetProcAddress("glGetLocalConstantFloatvEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_vertex_shader) +} + /* * Class: org.lwjgl.opengl.ext.EXTVertexShader * Method: glBeginVertexShaderEXT diff --git a/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexWeighting.cpp b/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexWeighting.cpp index b7e254e0..149ebe49 100644 --- a/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexWeighting.cpp +++ b/src/native/common/ext/org_lwjgl_opengl_ext_EXTVertexWeighting.cpp @@ -38,6 +38,24 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glVertexWeightfEXTPROC) (GLfloat weight); +typedef void (APIENTRY * glVertexWeightfvEXTPROC) (const GLfloat *weight); +typedef void (APIENTRY * glVertexWeightPointerEXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer); + +static glVertexWeightfEXTPROC glVertexWeightfEXT; +static glVertexWeightfvEXTPROC glVertexWeightfvEXT; +static glVertexWeightPointerEXTPROC glVertexWeightPointerEXT; + +void extgl_InitEXTVertexWeighting(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_EXT_vertex_weighting) + return; + glVertexWeightfEXT = (glVertexWeightfEXTPROC) extgl_GetProcAddress("glVertexWeightfEXT"); + glVertexWeightfvEXT = (glVertexWeightfvEXTPROC) extgl_GetProcAddress("glVertexWeightfvEXT"); + glVertexWeightPointerEXT = (glVertexWeightPointerEXTPROC) extgl_GetProcAddress("glVertexWeightPointerEXT"); + EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_vertex_weighting) +} + /* * Class: org.lwjgl.opengl.ext.EXTVertexWeighting * Method: glVertexWeightfEXT diff --git a/src/native/common/extgl.cpp b/src/native/common/extgl.cpp index 2efdc621..af5012c2 100755 --- a/src/native/common/extgl.cpp +++ b/src/native/common/extgl.cpp @@ -190,7 +190,7 @@ gluUnProject4PROC gluUnProject4 = NULL; /* function variables */ -glAccumPROC glAccum = NULL; +/*glAccumPROC glAccum = NULL; glAlphaFuncPROC glAlphaFunc = NULL; glAreTexturesResidentPROC glAreTexturesResident = NULL; glArrayElementPROC glArrayElement = NULL; @@ -525,7 +525,7 @@ glVertex4ivPROC glVertex4iv = NULL; glVertex4sPROC glVertex4s = NULL; glVertex4svPROC glVertex4sv = NULL; glVertexPointerPROC glVertexPointer = NULL; -glViewportPROC glViewport = NULL; +glViewportPROC glViewport = NULL;*/ /*-------------------------------------*/ /* WGL stuff */ @@ -588,12 +588,7 @@ wglGetCurrentReadDCARBPROC wglGetCurrentReadDCARB = NULL; /*-------------------------------------*/ -glDrawRangeElementsPROC glDrawRangeElements = NULL; -glTexImage3DPROC glTexImage3D = NULL; -glTexSubImage3DPROC glTexSubImage3D = NULL; -glCopyTexSubImage3DPROC glCopyTexSubImage3D = NULL; - -glBlendColorPROC glBlendColor = NULL; +/*glBlendColorPROC glBlendColor = NULL; glBlendEquationPROC glBlendEquation = NULL; glColorTablePROC glColorTable = NULL; glColorTableParameterfvPROC glColorTableParameterfv = NULL; @@ -626,586 +621,7 @@ glGetMinmaxParameterivPROC glGetMinmaxParameteriv = NULL; glHistogramPROC glHistogram = NULL; glMinmaxPROC glMinmax = NULL; glResetHistogramPROC glResetHistogram = NULL; -glResetMinmaxPROC glResetMinmax = NULL; - -/* 1.3 */ - -glActiveTexturePROC glActiveTexture = NULL; -glClientActiveTexturePROC glClientActiveTexture = NULL; -glMultiTexCoord1dPROC glMultiTexCoord1d = NULL; -glMultiTexCoord1dvPROC glMultiTexCoord1dv = NULL; -glMultiTexCoord1fPROC glMultiTexCoord1f = NULL; -glMultiTexCoord1fvPROC glMultiTexCoord1fv = NULL; -glMultiTexCoord1iPROC glMultiTexCoord1i = NULL; -glMultiTexCoord1ivPROC glMultiTexCoord1iv = NULL; -glMultiTexCoord1sPROC glMultiTexCoord1s = NULL; -glMultiTexCoord1svPROC glMultiTexCoord1sv = NULL; -glMultiTexCoord2dPROC glMultiTexCoord2d = NULL; -glMultiTexCoord2dvPROC glMultiTexCoord2dv = NULL; -glMultiTexCoord2fPROC glMultiTexCoord2f = NULL; -glMultiTexCoord2fvPROC glMultiTexCoord2fv = NULL; -glMultiTexCoord2iPROC glMultiTexCoord2i = NULL; -glMultiTexCoord2ivPROC glMultiTexCoord2iv = NULL; -glMultiTexCoord2sPROC glMultiTexCoord2s = NULL; -glMultiTexCoord2svPROC glMultiTexCoord2sv = NULL; -glMultiTexCoord3dPROC glMultiTexCoord3d = NULL; -glMultiTexCoord3dvPROC glMultiTexCoord3dv = NULL; -glMultiTexCoord3fPROC glMultiTexCoord3f = NULL; -glMultiTexCoord3fvPROC glMultiTexCoord3fv = NULL; -glMultiTexCoord3iPROC glMultiTexCoord3i = NULL; -glMultiTexCoord3ivPROC glMultiTexCoord3iv = NULL; -glMultiTexCoord3sPROC glMultiTexCoord3s = NULL; -glMultiTexCoord3svPROC glMultiTexCoord3sv = NULL; -glMultiTexCoord4dPROC glMultiTexCoord4d = NULL; -glMultiTexCoord4dvPROC glMultiTexCoord4dv = NULL; -glMultiTexCoord4fPROC glMultiTexCoord4f = NULL; -glMultiTexCoord4fvPROC glMultiTexCoord4fv = NULL; -glMultiTexCoord4iPROC glMultiTexCoord4i = NULL; -glMultiTexCoord4ivPROC glMultiTexCoord4iv = NULL; -glMultiTexCoord4sPROC glMultiTexCoord4s = NULL; -glMultiTexCoord4svPROC glMultiTexCoord4sv = NULL; -glLoadTransposeMatrixfPROC glLoadTransposeMatrixf = NULL; -glLoadTransposeMatrixdPROC glLoadTransposeMatrixd = NULL; -glMultTransposeMatrixfPROC glMultTransposeMatrixf = NULL; -glMultTransposeMatrixdPROC glMultTransposeMatrixd = NULL; -glCompressedTexImage3DPROC glCompressedTexImage3D = NULL; -glCompressedTexImage2DPROC glCompressedTexImage2D = NULL; -glCompressedTexImage1DPROC glCompressedTexImage1D = NULL; -glCompressedTexSubImage3DPROC glCompressedTexSubImage3D = NULL; -glCompressedTexSubImage2DPROC glCompressedTexSubImage2D = NULL; -glCompressedTexSubImage1DPROC glCompressedTexSubImage1D = NULL; -glGetCompressedTexImagePROC glGetCompressedTexImage = NULL; -glSampleCoveragePROC glSampleCoverage = NULL; - -/* ARB_multitexture */ - -glActiveTextureARBPROC glActiveTextureARB = NULL; -glClientActiveTextureARBPROC glClientActiveTextureARB = NULL; -glMultiTexCoord1dARBPROC glMultiTexCoord1dARB = NULL; -glMultiTexCoord1dvARBPROC glMultiTexCoord1dvARB = NULL; -glMultiTexCoord1fARBPROC glMultiTexCoord1fARB = NULL; -glMultiTexCoord1fvARBPROC glMultiTexCoord1fvARB = NULL; -glMultiTexCoord1iARBPROC glMultiTexCoord1iARB = NULL; -glMultiTexCoord1ivARBPROC glMultiTexCoord1ivARB = NULL; -glMultiTexCoord1sARBPROC glMultiTexCoord1sARB = NULL; -glMultiTexCoord1svARBPROC glMultiTexCoord1svARB = NULL; -glMultiTexCoord2dARBPROC glMultiTexCoord2dARB = NULL; -glMultiTexCoord2dvARBPROC glMultiTexCoord2dvARB = NULL; -glMultiTexCoord2fARBPROC glMultiTexCoord2fARB = NULL; -glMultiTexCoord2fvARBPROC glMultiTexCoord2fvARB = NULL; -glMultiTexCoord2iARBPROC glMultiTexCoord2iARB = NULL; -glMultiTexCoord2ivARBPROC glMultiTexCoord2ivARB = NULL; -glMultiTexCoord2sARBPROC glMultiTexCoord2sARB = NULL; -glMultiTexCoord2svARBPROC glMultiTexCoord2svARB = NULL; -glMultiTexCoord3dARBPROC glMultiTexCoord3dARB = NULL; -glMultiTexCoord3dvARBPROC glMultiTexCoord3dvARB = NULL; -glMultiTexCoord3fARBPROC glMultiTexCoord3fARB = NULL; -glMultiTexCoord3fvARBPROC glMultiTexCoord3fvARB = NULL; -glMultiTexCoord3iARBPROC glMultiTexCoord3iARB = NULL; -glMultiTexCoord3ivARBPROC glMultiTexCoord3ivARB = NULL; -glMultiTexCoord3sARBPROC glMultiTexCoord3sARB = NULL; -glMultiTexCoord3svARBPROC glMultiTexCoord3svARB = NULL; -glMultiTexCoord4dARBPROC glMultiTexCoord4dARB = NULL; -glMultiTexCoord4dvARBPROC glMultiTexCoord4dvARB = NULL; -glMultiTexCoord4fARBPROC glMultiTexCoord4fARB = NULL; -glMultiTexCoord4fvARBPROC glMultiTexCoord4fvARB = NULL; -glMultiTexCoord4iARBPROC glMultiTexCoord4iARB = NULL; -glMultiTexCoord4ivARBPROC glMultiTexCoord4ivARB = NULL; -glMultiTexCoord4sARBPROC glMultiTexCoord4sARB = NULL; -glMultiTexCoord4svARBPROC glMultiTexCoord4svARB = NULL; - -/* ARB_transpose_matrix */ - -glLoadTransposeMatrixfARBPROC glLoadTransposeMatrixfARB = NULL; -glLoadTransposeMatrixdARBPROC glLoadTransposeMatrixdARB = NULL; -glMultTransposeMatrixfARBPROC glMultTransposeMatrixfARB = NULL; -glMultTransposeMatrixdARBPROC glMultTransposeMatrixdARB = NULL; - -/* ARB_texture_compression */ - -glCompressedTexImage3DARBPROC glCompressedTexImage3DARB = NULL; -glCompressedTexImage2DARBPROC glCompressedTexImage2DARB = NULL; -glCompressedTexImage1DARBPROC glCompressedTexImage1DARB = NULL; -glCompressedTexSubImage3DARBPROC glCompressedTexSubImage3DARB = NULL; -glCompressedTexSubImage2DARBPROC glCompressedTexSubImage2DARB = NULL; -glCompressedTexSubImage1DARBPROC glCompressedTexSubImage1DARB = NULL; -glGetCompressedTexImageARBPROC glGetCompressedTexImageARB = NULL; - -/* EXT_secondary_color */ - -glSecondaryColor3bEXTPROC glSecondaryColor3bEXT = NULL; -glSecondaryColor3bvEXTPROC glSecondaryColor3bvEXT = NULL; -glSecondaryColor3dEXTPROC glSecondaryColor3dEXT = NULL; -glSecondaryColor3dvEXTPROC glSecondaryColor3dvEXT = NULL; -glSecondaryColor3fEXTPROC glSecondaryColor3fEXT = NULL; -glSecondaryColor3fvEXTPROC glSecondaryColor3fvEXT = NULL; -glSecondaryColor3iEXTPROC glSecondaryColor3iEXT = NULL; -glSecondaryColor3ivEXTPROC glSecondaryColor3ivEXT = NULL; -glSecondaryColor3sEXTPROC glSecondaryColor3sEXT = NULL; -glSecondaryColor3svEXTPROC glSecondaryColor3svEXT = NULL; -glSecondaryColor3ubEXTPROC glSecondaryColor3ubEXT = NULL; -glSecondaryColor3ubvEXTPROC glSecondaryColor3ubvEXT = NULL; -glSecondaryColor3uiEXTPROC glSecondaryColor3uiEXT = NULL; -glSecondaryColor3uivEXTPROC glSecondaryColor3uivEXT = NULL; -glSecondaryColor3usEXTPROC glSecondaryColor3usEXT = NULL; -glSecondaryColor3usvEXTPROC glSecondaryColor3usvEXT = NULL; -glSecondaryColorPointerEXTPROC glSecondaryColorPointerEXT = NULL; - -/* EXT_compiled_vertex_array */ - -glLockArraysEXTPROC glLockArraysEXT = NULL; -glUnlockArraysEXTPROC glUnlockArraysEXT = NULL; - -/* EXT_fog_coord */ - -glFogCoordfEXTPROC glFogCoordfEXT = NULL; -glFogCoordfvEXTPROC glFogCoordfvEXT = NULL; -glFogCoorddEXTPROC glFogCoorddEXT = NULL; -glFogCoorddvEXTPROC glFogCoorddvEXT = NULL; -glFogCoordPointerEXTPROC glFogCoordPointerEXT = NULL; - -/* NV_vertex_array_range */ - -glFlushVertexArrayRangeNVPROC glFlushVertexArrayRangeNV = NULL; -glVertexArrayRangeNVPROC glVertexArrayRangeNV = NULL; - -#ifdef _WIN32 -wglAllocateMemoryNVPROC wglAllocateMemoryNV = NULL; -wglFreeMemoryNVPROC wglFreeMemoryNV = NULL; -#endif /* WIN32 */ - -#ifdef _X11 -glXAllocateMemoryNVPROC glXAllocateMemoryNV = NULL; -glXFreeMemoryNVPROC glXFreeMemoryNV = NULL; -#endif /* X11 */ - -#ifdef _AGL -// TODO: find the OSX equivalent of these functions -#endif /* _AGL */ - -/* EXT_point_parameters */ - -glPointParameterfEXTPROC glPointParameterfEXT = NULL; -glPointParameterfvEXTPROC glPointParameterfvEXT = NULL; - -/* NV_register_combiners */ - -glCombinerParameterfvNVPROC glCombinerParameterfvNV = NULL; -glCombinerParameterfNVPROC glCombinerParameterfNV = NULL; -glCombinerParameterivNVPROC glCombinerParameterivNV = NULL; -glCombinerParameteriNVPROC glCombinerParameteriNV = NULL; -glCombinerInputNVPROC glCombinerInputNV = NULL; -glCombinerOutputNVPROC glCombinerOutputNV = NULL; -glFinalCombinerInputNVPROC glFinalCombinerInputNV = NULL; -glGetCombinerInputParameterfvNVPROC glGetCombinerInputParameterfvNV = NULL; -glGetCombinerInputParameterivNVPROC glGetCombinerInputParameterivNV = NULL; -glGetCombinerOutputParameterfvNVPROC glGetCombinerOutputParameterfvNV = NULL; -glGetCombinerOutputParameterivNVPROC glGetCombinerOutputParameterivNV = NULL; -glGetFinalCombinerInputParameterfvNVPROC glGetFinalCombinerInputParameterfvNV = NULL; -glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameterivNV = NULL; - -/* ARB_vertex_buffer_object */ - -glBindBufferARBPROC glBindBufferARB = NULL; -glDeleteBuffersARBPROC glDeleteBuffersARB = NULL; -glGenBuffersARBPROC glGenBuffersARB = NULL; -glIsBufferARBPROC glIsBufferARB = NULL; -glBufferDataARBPROC glBufferDataARB = NULL; -glBufferSubDataARBPROC glBufferSubDataARB = NULL; -glGetBufferSubDataARBPROC glGetBufferSubDataARB = NULL; -glMapBufferARBPROC glMapBufferARB = NULL; -glUnmapBufferARBPROC glUnmapBufferARB = NULL; -glGetBufferParameterivARBPROC glGetBufferParameterivARB = NULL; -glGetBufferPointervARBPROC glGetBufferPointervARB = NULL; -/* ARB_vertex_buffer_object */ - -glSampleCoverageARBPROC glSampleCoverageARB = NULL; - -/* EXT_vertex_weighting */ - -glVertexWeightfEXTPROC glVertexWeightfEXT = NULL; -glVertexWeightfvEXTPROC glVertexWeightfvEXT = NULL; -glVertexWeightPointerEXTPROC glVertexWeightPointerEXT = NULL; - -/* NV_vertex_program */ - -glBindProgramNVPROC glBindProgramNV = NULL; -glDeleteProgramsNVPROC glDeleteProgramsNV = NULL; -glExecuteProgramNVPROC glExecuteProgramNV = NULL; -glGenProgramsNVPROC glGenProgramsNV = NULL; -glAreProgramsResidentNVPROC glAreProgramsResidentNV = NULL; -glRequestResidentProgramsNVPROC glRequestResidentProgramsNV = NULL; -glGetProgramParameterfvNVPROC glGetProgramParameterfvNV = NULL; -glGetProgramParameterdvNVPROC glGetProgramParameterdvNV = NULL; -glGetProgramivNVPROC glGetProgramivNV = NULL; -glGetProgramStringNVPROC glGetProgramStringNV = NULL; -glGetTrackMatrixivNVPROC glGetTrackMatrixivNV = NULL; -glGetVertexAttribdvNVPROC glGetVertexAttribdvNV = NULL; -glGetVertexAttribfvNVPROC glGetVertexAttribfvNV = NULL; -glGetVertexAttribivNVPROC glGetVertexAttribivNV = NULL; -glGetVertexAttribPointervNVPROC glGetVertexAttribPointervNV = NULL; -glIsProgramNVPROC glIsProgramNV = NULL; -glLoadProgramNVPROC glLoadProgramNV = NULL; -glProgramParameter4fNVPROC glProgramParameter4fNV = NULL; -glProgramParameter4dNVPROC glProgramParameter4dNV = NULL; -glProgramParameter4dvNVPROC glProgramParameter4dvNV = NULL; -glProgramParameter4fvNVPROC glProgramParameter4fvNV = NULL; -glProgramParameters4dvNVPROC glProgramParameters4dvNV = NULL; -glProgramParameters4fvNVPROC glProgramParameters4fvNV = NULL; -glTrackMatrixNVPROC glTrackMatrixNV = NULL; -glVertexAttribPointerNVPROC glVertexAttribPointerNV = NULL; -glVertexAttrib1sNVPROC glVertexAttrib1sNV = NULL; -glVertexAttrib1fNVPROC glVertexAttrib1fNV = NULL; -glVertexAttrib1dNVPROC glVertexAttrib1dNV = NULL; -glVertexAttrib2sNVPROC glVertexAttrib2sNV = NULL; -glVertexAttrib2fNVPROC glVertexAttrib2fNV = NULL; -glVertexAttrib2dNVPROC glVertexAttrib2dNV = NULL; -glVertexAttrib3sNVPROC glVertexAttrib3sNV = NULL; -glVertexAttrib3fNVPROC glVertexAttrib3fNV = NULL; -glVertexAttrib3dNVPROC glVertexAttrib3dNV = NULL; -glVertexAttrib4sNVPROC glVertexAttrib4sNV = NULL; -glVertexAttrib4fNVPROC glVertexAttrib4fNV = NULL; -glVertexAttrib4dNVPROC glVertexAttrib4dNV = NULL; -glVertexAttrib4ubNVPROC glVertexAttrib4ubNV = NULL; -glVertexAttrib1svNVPROC glVertexAttrib1svNV = NULL; -glVertexAttrib1fvNVPROC glVertexAttrib1fvNV = NULL; -glVertexAttrib1dvNVPROC glVertexAttrib1dvNV = NULL; -glVertexAttrib2svNVPROC glVertexAttrib2svNV = NULL; -glVertexAttrib2fvNVPROC glVertexAttrib2fvNV = NULL; -glVertexAttrib2dvNVPROC glVertexAttrib2dvNV = NULL; -glVertexAttrib3svNVPROC glVertexAttrib3svNV = NULL; -glVertexAttrib3fvNVPROC glVertexAttrib3fvNV = NULL; -glVertexAttrib3dvNVPROC glVertexAttrib3dvNV = NULL; -glVertexAttrib4svNVPROC glVertexAttrib4svNV = NULL; -glVertexAttrib4fvNVPROC glVertexAttrib4fvNV = NULL; -glVertexAttrib4dvNVPROC glVertexAttrib4dvNV = NULL; -glVertexAttrib4ubvNVPROC glVertexAttrib4ubvNV = NULL; -glVertexAttribs1svNVPROC glVertexAttribs1svNV = NULL; -glVertexAttribs1fvNVPROC glVertexAttribs1fvNV = NULL; -glVertexAttribs1dvNVPROC glVertexAttribs1dvNV = NULL; -glVertexAttribs2svNVPROC glVertexAttribs2svNV = NULL; -glVertexAttribs2fvNVPROC glVertexAttribs2fvNV = NULL; -glVertexAttribs2dvNVPROC glVertexAttribs2dvNV = NULL; -glVertexAttribs3svNVPROC glVertexAttribs3svNV = NULL; -glVertexAttribs3fvNVPROC glVertexAttribs3fvNV = NULL; -glVertexAttribs3dvNVPROC glVertexAttribs3dvNV = NULL; -glVertexAttribs4svNVPROC glVertexAttribs4svNV = NULL; -glVertexAttribs4fvNVPROC glVertexAttribs4fvNV = NULL; -glVertexAttribs4dvNVPROC glVertexAttribs4dvNV = NULL; -glVertexAttribs4ubvNVPROC glVertexAttribs4ubvNV = NULL; - -/* NV_fence */ - -glGenFencesNVPROC glGenFencesNV = NULL; -glDeleteFencesNVPROC glDeleteFencesNV = NULL; -glSetFenceNVPROC glSetFenceNV = NULL; -glTestFenceNVPROC glTestFenceNV = NULL; -glFinishFenceNVPROC glFinishFenceNV = NULL; -glIsFenceNVPROC glIsFenceNV = NULL; -glGetFenceivNVPROC glGetFenceivNV = NULL; - -/* NV_register_combiners2 */ - -glCombinerStageParameterfvNVPROC glCombinerStageParameterfvNV = NULL; -glGetCombinerStageParameterfvNVPROC glGetCombinerStageParameterfvNV = NULL; - -/* NV_evaluators */ - -glMapControlPointsNVPROC glMapControlPointsNV = NULL; -glMapParameterivNVPROC glMapParameterivNV = NULL; -glMapParameterfvNVPROC glMapParameterfvNV = NULL; -glGetMapControlPointsNVPROC glGetMapControlPointsNV = NULL; -glGetMapParameterivNVPROC glGetMapParameterivNV = NULL; -glGetMapParameterfvNVPROC glGetMapParameterfvNV = NULL; -glGetMapAttribParameterivNVPROC glGetMapAttribParameterivNV = NULL; -glGetMapAttribParameterfvNVPROC glGetMapAttribParameterfvNV = NULL; -glEvalMapsNVPROC glEvalMapsNV = NULL; - -/* ATI_separate_stencil */ - -glStencilOpSeparateATIPROC glStencilOpSeparateATI = NULL; -glStencilFuncSeparateATIPROC glStencilFuncSeparateATI = NULL; - -/* ATI_pn_triangles */ - -glPNTrianglesiATIPROC glPNTrianglesiATI = NULL; -glPNTrianglesfATIPROC glPNTrianglesfATI = NULL; - -/* ARB_point_parameters */ - -glPointParameterfARBPROC glPointParameterfARB = NULL; -glPointParameterfvARBPROC glPointParameterfvARB = NULL; - -/* ARB_vertex_blend */ - -glWeightbvARBPROC glWeightbvARB = NULL; -glWeightsvARBPROC glWeightsvARB = NULL; -glWeightivARBPROC glWeightivARB = NULL; -glWeightfvARBPROC glWeightfvARB = NULL; -glWeightdvARBPROC glWeightdvARB = NULL; -glWeightubvARBPROC glWeightubvARB = NULL; -glWeightusvARBPROC glWeightusvARB = NULL; -glWeightuivARBPROC glWeightuivARB = NULL; -glWeightPointerARBPROC glWeightPointerARB = NULL; -glVertexBlendARBPROC glVertexBlendARB = NULL; - -/* EXT_multi_draw_arrays */ - -glMultiDrawArraysEXTPROC glMultiDrawArraysEXT = NULL; -glMultiDrawElementsEXTPROC glMultiDrawElementsEXT = NULL; - -/* ARB_matrix_palette */ - -glCurrentPaletteMatrixARBPROC glCurrentPaletteMatrixARB = NULL; -glMatrixIndexubvARBPROC glMatrixIndexubvARB = NULL; -glMatrixIndexusvARBPROC glMatrixIndexusvARB = NULL; -glMatrixIndexuivARBPROC glMatrixIndexuivARB = NULL; -glMatrixIndexPointerARBPROC glMatrixIndexPointerARB = NULL; - -/* EXT_vertex_shader */ - -glBeginVertexShaderEXTPROC glBeginVertexShaderEXT = NULL; -glEndVertexShaderEXTPROC glEndVertexShaderEXT = NULL; -glBindVertexShaderEXTPROC glBindVertexShaderEXT = NULL; -glGenVertexShadersEXTPROC glGenVertexShadersEXT = NULL; -glDeleteVertexShaderEXTPROC glDeleteVertexShaderEXT = NULL; -glShaderOp1EXTPROC glShaderOp1EXT = NULL; -glShaderOp2EXTPROC glShaderOp2EXT = NULL; -glShaderOp3EXTPROC glShaderOp3EXT = NULL; -glSwizzleEXTPROC glSwizzleEXT = NULL; -glWriteMaskEXTPROC glWriteMaskEXT = NULL; -glInsertComponentEXTPROC glInsertComponentEXT = NULL; -glExtractComponentEXTPROC glExtractComponentEXT = NULL; -glGenSymbolsEXTPROC glGenSymbolsEXT = NULL; -glSetInvariantEXTPROC glSetInvariantEXT = NULL; -glSetLocalConstantEXTPROC glSetLocalConstantEXT = NULL; -glVariantbvEXTPROC glVariantbvEXT = NULL; -glVariantsvEXTPROC glVariantsvEXT = NULL; -glVariantivEXTPROC glVariantivEXT = NULL; -glVariantfvEXTPROC glVariantfvEXT = NULL; -glVariantdvEXTPROC glVariantdvEXT = NULL; -glVariantubvEXTPROC glVariantubvEXT = NULL; -glVariantusvEXTPROC glVariantusvEXT = NULL; -glVariantuivEXTPROC glVariantuivEXT = NULL; -glVariantPointerEXTPROC glVariantPointerEXT = NULL; -glEnableVariantClientStateEXTPROC glEnableVariantClientStateEXT = NULL; -glDisableVariantClientStateEXTPROC glDisableVariantClientStateEXT = NULL; -glBindLightParameterEXTPROC glBindLightParameterEXT = NULL; -glBindMaterialParameterEXTPROC glBindMaterialParameterEXT = NULL; -glBindTexGenParameterEXTPROC glBindTexGenParameterEXT = NULL; -glBindTextureUnitParameterEXTPROC glBindTextureUnitParameterEXT = NULL; -glBindParameterEXTPROC glBindParameterEXT = NULL; -glIsVariantEnabledEXTPROC glIsVariantEnabledEXT = NULL; -glGetVariantBooleanvEXTPROC glGetVariantBooleanvEXT = NULL; -glGetVariantIntegervEXTPROC glGetVariantIntegervEXT = NULL; -glGetVariantFloatvEXTPROC glGetVariantFloatvEXT = NULL; -glGetVariantPointervEXTPROC glGetVariantPointervEXT = NULL; -glGetInvariantBooleanvEXTPROC glGetInvariantBooleanvEXT = NULL; -glGetInvariantIntegervEXTPROC glGetInvariantIntegervEXT = NULL; -glGetInvariantFloatvEXTPROC glGetInvariantFloatvEXT = NULL; -glGetLocalConstantBooleanvEXTPROC glGetLocalConstantBooleanvEXT = NULL; -glGetLocalConstantIntegervEXTPROC glGetLocalConstantIntegervEXT = NULL; -glGetLocalConstantFloatvEXTPROC glGetLocalConstantFloatvEXT = NULL; - -/* ATI_envmap_bumpmap */ - -glTexBumpParameterivATIPROC glTexBumpParameterivATI = NULL; -glTexBumpParameterfvATIPROC glTexBumpParameterfvATI = NULL; -glGetTexBumpParameterivATIPROC glGetTexBumpParameterivATI = NULL; -glGetTexBumpParameterfvATIPROC glGetTexBumpParameterfvATI = NULL; - -/* ATI_fragment_shader */ - -glGenFragmentShadersATIPROC glGenFragmentShadersATI = NULL; -glBindFragmentShaderATIPROC glBindFragmentShaderATI = NULL; -glDeleteFragmentShaderATIPROC glDeleteFragmentShaderATI = NULL; -glBeginFragmentShaderATIPROC glBeginFragmentShaderATI = NULL; -glEndFragmentShaderATIPROC glEndFragmentShaderATI = NULL; -glPassTexCoordATIPROC glPassTexCoordATI = NULL; -glSampleMapATIPROC glSampleMapATI = NULL; -glColorFragmentOp1ATIPROC glColorFragmentOp1ATI = NULL; -glColorFragmentOp2ATIPROC glColorFragmentOp2ATI = NULL; -glColorFragmentOp3ATIPROC glColorFragmentOp3ATI = NULL; -glAlphaFragmentOp1ATIPROC glAlphaFragmentOp1ATI = NULL; -glAlphaFragmentOp2ATIPROC glAlphaFragmentOp2ATI = NULL; -glAlphaFragmentOp3ATIPROC glAlphaFragmentOp3ATI = NULL; -glSetFragmentShaderConstantATIPROC glSetFragmentShaderConstantATI = NULL; - -/* ATI_element_array */ - -glElementPointerATIPROC glElementPointerATI = NULL; -glDrawElementArrayATIPROC glDrawElementArrayATI = NULL; -glDrawRangeElementArrayATIPROC glDrawRangeElementArrayATI = NULL; - -/* ATI_vertex_streams */ - -glClientActiveVertexStreamATIPROC glClientActiveVertexStreamATI = NULL; -glVertexBlendEnviATIPROC glVertexBlendEnviATI = NULL; -glVertexBlendEnvfATIPROC glVertexBlendEnvfATI = NULL; -glVertexStream1sATIPROC glVertexStream1sATI = NULL; -glVertexStream1svATIPROC glVertexStream1svATI = NULL; -glVertexStream1iATIPROC glVertexStream1iATI = NULL; -glVertexStream1ivATIPROC glVertexStream1ivATI = NULL; -glVertexStream1fATIPROC glVertexStream1fATI = NULL; -glVertexStream1fvATIPROC glVertexStream1fvATI = NULL; -glVertexStream1dATIPROC glVertexStream1dATI = NULL; -glVertexStream1dvATIPROC glVertexStream1dvATI = NULL; -glVertexStream2sATIPROC glVertexStream2sATI = NULL; -glVertexStream2svATIPROC glVertexStream2svATI = NULL; -glVertexStream2iATIPROC glVertexStream2iATI = NULL; -glVertexStream2ivATIPROC glVertexStream2ivATI = NULL; -glVertexStream2fATIPROC glVertexStream2fATI = NULL; -glVertexStream2fvATIPROC glVertexStream2fvATI = NULL; -glVertexStream2dATIPROC glVertexStream2dATI = NULL; -glVertexStream2dvATIPROC glVertexStream2dvATI = NULL; -glVertexStream3sATIPROC glVertexStream3sATI = NULL; -glVertexStream3svATIPROC glVertexStream3svATI = NULL; -glVertexStream3iATIPROC glVertexStream3iATI = NULL; -glVertexStream3ivATIPROC glVertexStream3ivATI = NULL; -glVertexStream3fATIPROC glVertexStream3fATI = NULL; -glVertexStream3fvATIPROC glVertexStream3fvATI = NULL; -glVertexStream3dATIPROC glVertexStream3dATI = NULL; -glVertexStream3dvATIPROC glVertexStream3dvATI = NULL; -glVertexStream4sATIPROC glVertexStream4sATI = NULL; -glVertexStream4svATIPROC glVertexStream4svATI = NULL; -glVertexStream4iATIPROC glVertexStream4iATI = NULL; -glVertexStream4ivATIPROC glVertexStream4ivATI = NULL; -glVertexStream4fATIPROC glVertexStream4fATI = NULL; -glVertexStream4fvATIPROC glVertexStream4fvATI = NULL; -glVertexStream4dATIPROC glVertexStream4dATI = NULL; -glVertexStream4dvATIPROC glVertexStream4dvATI = NULL; -glNormalStream3bATIPROC glNormalStream3bATI = NULL; -glNormalStream3bvATIPROC glNormalStream3bvATI = NULL; -glNormalStream3sATIPROC glNormalStream3sATI = NULL; -glNormalStream3svATIPROC glNormalStream3svATI = NULL; -glNormalStream3iATIPROC glNormalStream3iATI = NULL; -glNormalStream3ivATIPROC glNormalStream3ivATI = NULL; -glNormalStream3fATIPROC glNormalStream3fATI = NULL; -glNormalStream3fvATIPROC glNormalStream3fvATI = NULL; -glNormalStream3dATIPROC glNormalStream3dATI = NULL; -glNormalStream3dvATIPROC glNormalStream3dvATI = NULL; - -/* ATI_vertex_array_object */ - -glNewObjectBufferATIPROC glNewObjectBufferATI = NULL; -glIsObjectBufferATIPROC glIsObjectBufferATI = NULL; -glUpdateObjectBufferATIPROC glUpdateObjectBufferATI = NULL; -glGetObjectBufferfvATIPROC glGetObjectBufferfvATI = NULL; -glGetObjectBufferivATIPROC glGetObjectBufferivATI = NULL; -glFreeObjectBufferATIPROC glFreeObjectBufferATI = NULL; -glArrayObjectATIPROC glArrayObjectATI = NULL; -glGetArrayObjectfvATIPROC glGetArrayObjectfvATI = NULL; -glGetArrayObjectivATIPROC glGetArrayObjectivATI = NULL; -glVariantArrayObjectATIPROC glVariantArrayObjectATI = NULL; -glGetVariantArrayObjectfvATIPROC glGetVariantArrayObjectfvATI = NULL; -glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI = NULL; - -/* NV_occlusion_query */ - -glGenOcclusionQueriesNVPROC glGenOcclusionQueriesNV = NULL; -glDeleteOcclusionQueriesNVPROC glDeleteOcclusionQueriesNV = NULL; -glIsOcclusionQueryNVPROC glIsOcclusionQueryNV = NULL; -glBeginOcclusionQueryNVPROC glBeginOcclusionQueryNV = NULL; -glEndOcclusionQueryNVPROC glEndOcclusionQueryNV = NULL; -glGetOcclusionQueryivNVPROC glGetOcclusionQueryivNV = NULL; -glGetOcclusionQueryuivNVPROC glGetOcclusionQueryuivNV = NULL; - -/* NV_point_sprite */ - -glPointParameteriNVPROC glPointParameteriNV = NULL; -glPointParameterivNVPROC glPointParameterivNV = NULL; - -/* ARB_window_pos */ - -glWindowPos2dARBPROC glWindowPos2dARB = NULL; -glWindowPos2fARBPROC glWindowPos2fARB = NULL; -glWindowPos2iARBPROC glWindowPos2iARB = NULL; -glWindowPos2sARBPROC glWindowPos2sARB = NULL; -glWindowPos2dvARBPROC glWindowPos2dvARB = NULL; -glWindowPos2fvARBPROC glWindowPos2fvARB = NULL; -glWindowPos2ivARBPROC glWindowPos2ivARB = NULL; -glWindowPos2svARBPROC glWindowPos2svARB = NULL; -glWindowPos3dARBPROC glWindowPos3dARB = NULL; -glWindowPos3fARBPROC glWindowPos3fARB = NULL; -glWindowPos3iARBPROC glWindowPos3iARB = NULL; -glWindowPos3sARBPROC glWindowPos3sARB = NULL; -glWindowPos3dvARBPROC glWindowPos3dvARB = NULL; -glWindowPos3fvARBPROC glWindowPos3fvARB = NULL; -glWindowPos3ivARBPROC glWindowPos3ivARB = NULL; -glWindowPos3svARBPROC glWindowPos3svARB = NULL; - -/* EXT_draw_range_elements */ - -glDrawRangeElementsEXTPROC glDrawRangeElementsEXT = NULL; - -/* EXT_stencil_two_side */ - -glActiveStencilFaceEXTPROC glActiveStencilFaceEXT = NULL; - -/* ARB_vertex_program */ - -glVertexAttrib1sARBPROC glVertexAttrib1sARB = NULL; -glVertexAttrib1fARBPROC glVertexAttrib1fARB = NULL; -glVertexAttrib1dARBPROC glVertexAttrib1dARB = NULL; -glVertexAttrib2sARBPROC glVertexAttrib2sARB = NULL; -glVertexAttrib2fARBPROC glVertexAttrib2fARB = NULL; -glVertexAttrib2dARBPROC glVertexAttrib2dARB = NULL; -glVertexAttrib3sARBPROC glVertexAttrib3sARB = NULL; -glVertexAttrib3fARBPROC glVertexAttrib3fARB = NULL; -glVertexAttrib3dARBPROC glVertexAttrib3dARB = NULL; -glVertexAttrib4sARBPROC glVertexAttrib4sARB = NULL; -glVertexAttrib4fARBPROC glVertexAttrib4fARB = NULL; -glVertexAttrib4dARBPROC glVertexAttrib4dARB = NULL; -glVertexAttrib4NubARBPROC glVertexAttrib4NubARB = NULL; -glVertexAttrib1svARBPROC glVertexAttrib1svARB = NULL; -glVertexAttrib1fvARBPROC glVertexAttrib1fvARB = NULL; -glVertexAttrib1dvARBPROC glVertexAttrib1dvARB = NULL; -glVertexAttrib2svARBPROC glVertexAttrib2svARB = NULL; -glVertexAttrib2fvARBPROC glVertexAttrib2fvARB = NULL; -glVertexAttrib2dvARBPROC glVertexAttrib2dvARB = NULL; -glVertexAttrib3svARBPROC glVertexAttrib3svARB = NULL; -glVertexAttrib3fvARBPROC glVertexAttrib3fvARB = NULL; -glVertexAttrib3dvARBPROC glVertexAttrib3dvARB = NULL; -glVertexAttrib4bvARBPROC glVertexAttrib4bvARB = NULL; -glVertexAttrib4svARBPROC glVertexAttrib4svARB = NULL; -glVertexAttrib4ivARBPROC glVertexAttrib4ivARB = NULL; -glVertexAttrib4ubvARBPROC glVertexAttrib4ubvARB = NULL; -glVertexAttrib4usvARBPROC glVertexAttrib4usvARB = NULL; -glVertexAttrib4uivARBPROC glVertexAttrib4uivARB = NULL; -glVertexAttrib4fvARBPROC glVertexAttrib4fvARB = NULL; -glVertexAttrib4dvARBPROC glVertexAttrib4dvARB = NULL; -glVertexAttrib4NbvARBPROC glVertexAttrib4NbvARB = NULL; -glVertexAttrib4NsvARBPROC glVertexAttrib4NsvARB = NULL; -glVertexAttrib4NivARBPROC glVertexAttrib4NivARB = NULL; -glVertexAttrib4NubvARBPROC glVertexAttrib4NubvARB = NULL; -glVertexAttrib4NusvARBPROC glVertexAttrib4NusvARB = NULL; -glVertexAttrib4NuivARBPROC glVertexAttrib4NuivARB = NULL; -glVertexAttribPointerARBPROC glVertexAttribPointerARB = NULL; -glEnableVertexAttribArrayARBPROC glEnableVertexAttribArrayARB = NULL; -glDisableVertexAttribArrayARBPROC glDisableVertexAttribArrayARB = NULL; -glProgramStringARBPROC glProgramStringARB = NULL; -glBindProgramARBPROC glBindProgramARB = NULL; -glDeleteProgramsARBPROC glDeleteProgramsARB = NULL; -glGenProgramsARBPROC glGenProgramsARB = NULL; -glProgramEnvParameter4dARBPROC glProgramEnvParameter4dARB = NULL; -glProgramEnvParameter4dvARBPROC glProgramEnvParameter4dvARB = NULL; -glProgramEnvParameter4fARBPROC glProgramEnvParameter4fARB = NULL; -glProgramEnvParameter4fvARBPROC glProgramEnvParameter4fvARB = NULL; -/*glProgramLocalParameter4dARBPROC glProgramLocalParameter4dARB = NULL; -glProgramLocalParameter4dvARBPROC glProgramLocalParameter4dvARB = NULL; -glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB = NULL; -glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB = NULL;*/ -glGetProgramEnvParameterdvARBPROC glGetProgramEnvParameterdvARB = NULL; -glGetProgramEnvParameterfvARBPROC glGetProgramEnvParameterfvARB = NULL; -/*glGetProgramLocalParameterdvARBPROC glGetProgramLocalParameterdvARB = NULL; -glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB = NULL;*/ -glGetProgramivARBPROC glGetProgramivARB = NULL; -glGetProgramStringARBPROC glGetProgramStringARB = NULL; -glGetVertexAttribdvARBPROC glGetVertexAttribdvARB = NULL; -glGetVertexAttribfvARBPROC glGetVertexAttribfvARB = NULL; -glGetVertexAttribivARBPROC glGetVertexAttribivARB = NULL; -glGetVertexAttribPointervARBPROC glGetVertexAttribPointervARB = NULL; -glIsProgramARBPROC glIsProgramARB = NULL; +glResetMinmaxPROC glResetMinmax = NULL;*/ /* EXT_cull_vertex */ @@ -1215,81 +631,16 @@ glCullParameterdvEXTPROC glCullParameterdvEXT = NULL; //glBlendFuncSeparateEXTPROC glBlendFuncSeparateEXT = NULL; //glBlendFuncSeparateINGRPROC glBlendFuncSeparateINGR = NULL; -glFogCoordfPROC glFogCoordf = NULL; -glFogCoordfvPROC glFogCoordfv = NULL; -glFogCoorddPROC glFogCoordd = NULL; -glFogCoorddvPROC glFogCoorddv = NULL; -glFogCoordPointerPROC glFogCoordPointer = NULL; -glMultiDrawArraysPROC glMultiDrawArrays = NULL; -glMultiDrawElementsPROC glMultiDrawElements = NULL; -glPointParameterfPROC glPointParameterf = NULL; -glPointParameterfvPROC glPointParameterfv = NULL; -glSecondaryColor3bPROC glSecondaryColor3b = NULL; -glSecondaryColor3bvPROC glSecondaryColor3bv = NULL; -glSecondaryColor3dPROC glSecondaryColor3d = NULL; -glSecondaryColor3dvPROC glSecondaryColor3dv = NULL; -glSecondaryColor3fPROC glSecondaryColor3f = NULL; -glSecondaryColor3fvPROC glSecondaryColor3fv = NULL; -glSecondaryColor3iPROC glSecondaryColor3i = NULL; -glSecondaryColor3ivPROC glSecondaryColor3iv = NULL; -glSecondaryColor3sPROC glSecondaryColor3s = NULL; -glSecondaryColor3svPROC glSecondaryColor3sv = NULL; -glSecondaryColor3ubPROC glSecondaryColor3ub = NULL; -glSecondaryColor3ubvPROC glSecondaryColor3ubv = NULL; -glSecondaryColor3uiPROC glSecondaryColor3ui = NULL; -glSecondaryColor3uivPROC glSecondaryColor3uiv = NULL; -glSecondaryColor3usPROC glSecondaryColor3us = NULL; -glSecondaryColor3usvPROC glSecondaryColor3usv = NULL; -glSecondaryColorPointerPROC glSecondaryColorPointer = NULL; -glBlendFuncSeparatePROC glBlendFuncSeparate = NULL; -glWindowPos2dPROC glWindowPos2d = NULL; -glWindowPos2fPROC glWindowPos2f = NULL; -glWindowPos2iPROC glWindowPos2i = NULL; -glWindowPos2sPROC glWindowPos2s = NULL; -glWindowPos2dvPROC glWindowPos2dv = NULL; -glWindowPos2fvPROC glWindowPos2fv = NULL; -glWindowPos2ivPROC glWindowPos2iv = NULL; -glWindowPos2svPROC glWindowPos2sv = NULL; -glWindowPos3dPROC glWindowPos3d = NULL; -glWindowPos3fPROC glWindowPos3f = NULL; -glWindowPos3iPROC glWindowPos3i = NULL; -glWindowPos3sPROC glWindowPos3s = NULL; -glWindowPos3dvPROC glWindowPos3dv = NULL; -glWindowPos3fvPROC glWindowPos3fv = NULL; -glWindowPos3ivPROC glWindowPos3iv = NULL; -glWindowPos3svPROC glWindowPos3sv = NULL; - -glBlendFuncSeparateEXTPROC glBlendFuncSeparateEXT = NULL; - glElementPointerNVPROC glElementPointerNV = NULL; glDrawElementArrayNVPROC glDrawElementArrayNV = NULL; glDrawRangeElementArrayNVPROC glDrawRangeElementArrayNV = NULL; glMultiDrawElementArrayNVPROC glMultiDrawElementArrayNV = NULL; glMultiDrawRangeElementArrayNVPROC glMultiDrawRangeElementArrayNV = NULL; -glProgramNamedParameter4fNVPROC glProgramNamedParameter4fNV = NULL; -glProgramNamedParameter4dNVPROC glProgramNamedParameter4dNV = NULL; -glProgramNamedParameter4fvNVPROC glProgramNamedParameter4fvNV = NULL; -glProgramNamedParameter4dvNVPROC glProgramNamedParameter4dvNV = NULL; -glGetProgramNamedParameterfvNVPROC glGetProgramNamedParameterfvNV = NULL; -glGetProgramNamedParameterdvNVPROC glGetProgramNamedParameterdvNV = NULL; -glProgramLocalParameter4dNVPROC glProgramLocalParameter4dNV = NULL; -glProgramLocalParameter4dvNVPROC glProgramLocalParameter4dvNV = NULL; -glProgramLocalParameter4fNVPROC glProgramLocalParameter4fNV = NULL; -glProgramLocalParameter4fvNVPROC glProgramLocalParameter4fvNV = NULL; -glGetProgramLocalParameterdvNVPROC glGetProgramLocalParameterdvNV = NULL; -glGetProgramLocalParameterfvNVPROC glGetProgramLocalParameterfvNV = NULL; -glProgramLocalParameter4dARBPROC glProgramLocalParameter4dARB = NULL; -glProgramLocalParameter4dvARBPROC glProgramLocalParameter4dvARB = NULL; -glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB = NULL; -glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB = NULL; -glGetProgramLocalParameterdvARBPROC glGetProgramLocalParameterdvARB = NULL; -glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB = NULL; - glPrimitiveRestartNVPROC glPrimitiveRestartNV = NULL; glPrimitiveRestartIndexNVPROC glPrimitiveRestartIndexNV = NULL; -static bool extgl_error = false; +bool extgl_error = false; struct ExtensionTypes extgl_Extensions; @@ -1308,13 +659,6 @@ CFBundleRef opengl_bundle_ref = NULL; CFBundleRef agl_bundle_ref = NULL; #endif -#define EXTGL_SANITY_CHECK(e,h,x) if (extgl_error) { \ - extgl_Extensions.x = 0; \ - printf("NOTICE: %s disabled because of missing driver symbols\n", #x); \ - extgl_error = false; \ - removeExtension(e, h, #x); \ - } - static void doExtension(JNIEnv *env, jobject ext_set, const char *method_name, const char *ext) { jclass clazz = env->GetObjectClass(ext_set); jmethodID id = env->GetMethodID(clazz, method_name, "(Ljava/lang/Object;)Z"); @@ -1328,7 +672,7 @@ static void doExtension(JNIEnv *env, jobject ext_set, const char *method_name, c env->CallBooleanMethod(ext_set, id, ext_string); } -static void removeExtension(JNIEnv *env, jobject ext_set, const char *ext) { +void extgl_removeExtension(JNIEnv *env, jobject ext_set, const char *ext) { doExtension(env, ext_set, "remove", ext); } @@ -1409,7 +753,7 @@ static void aglUnloadFramework(CFBundleRef f) /* getProcAddress */ -static void *extgl_GetProcAddress(char *name) +void *extgl_GetProcAddress(const char *name) { #ifdef _WIN32 void *t = wglGetProcAddress(name); @@ -1720,33 +1064,7 @@ static bool GLQueryExtension(JNIEnv *env, jobject ext_set, const char *name) return QueryExtension(env, ext_set, glGetString(GL_EXTENSIONS), name); } -static void extgl_InitARBFragmentProgram(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_fragment_program) - return; - glProgramStringARB = (glProgramStringARBPROC) extgl_GetProcAddress("glProgramStringARB"); - glBindProgramARB = (glBindProgramARBPROC) extgl_GetProcAddress("glBindProgramARB"); - glDeleteProgramsARB = (glDeleteProgramsARBPROC) extgl_GetProcAddress("glDeleteProgramsARB"); - glGenProgramsARB = (glGenProgramsARBPROC) extgl_GetProcAddress("glGenProgramsARB"); - glProgramEnvParameter4dARB = (glProgramEnvParameter4dARBPROC) extgl_GetProcAddress("glProgramEnvParameter4dARB"); - glProgramEnvParameter4dvARB = (glProgramEnvParameter4dvARBPROC) extgl_GetProcAddress("glProgramEnvParameter4dvARB"); - glProgramEnvParameter4fARB = (glProgramEnvParameter4fARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fARB"); - glProgramEnvParameter4fvARB = (glProgramEnvParameter4fvARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fvARB"); - glProgramLocalParameter4dARB = (glProgramLocalParameter4dARBPROC) extgl_GetProcAddress("glProgramLocalParameter4dARB"); - glProgramLocalParameter4dvARB = (glProgramLocalParameter4dvARBPROC) extgl_GetProcAddress("glProgramLocalParameter4dvARB"); - glProgramLocalParameter4fARB = (glProgramLocalParameter4fARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fARB"); - glProgramLocalParameter4fvARB = (glProgramLocalParameter4fvARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fvARB"); - glGetProgramEnvParameterdvARB = (glGetProgramEnvParameterdvARBPROC) extgl_GetProcAddress("glGetProgramEnvParameterdvARB"); - glGetProgramEnvParameterfvARB = (glGetProgramEnvParameterfvARBPROC) extgl_GetProcAddress("glGetProgramEnvParameterfvARB"); - glGetProgramLocalParameterdvARB = (glGetProgramLocalParameterdvARBPROC) extgl_GetProcAddress("glGetProgramLocalParameterdvARB"); - glGetProgramLocalParameterfvARB = (glGetProgramLocalParameterfvARBPROC) extgl_GetProcAddress("glGetProgramLocalParameterfvARB"); - glGetProgramivARB = (glGetProgramivARBPROC) extgl_GetProcAddress("glGetProgramivARB"); - glGetProgramStringARB = (glGetProgramStringARBPROC) extgl_GetProcAddress("glGetProgramStringARB"); - glIsProgramARB = (glIsProgramARBPROC) extgl_GetProcAddress("glIsProgramARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_fragment_program) -} - -static void extgl_InitNVPrimitiveRestart(JNIEnv *env, jobject ext_set) +/*static void extgl_InitNVPrimitiveRestart(JNIEnv *env, jobject ext_set) { if (!extgl_Extensions.GL_NV_primitive_restart) return; @@ -1755,25 +1073,6 @@ static void extgl_InitNVPrimitiveRestart(JNIEnv *env, jobject ext_set) EXTGL_SANITY_CHECK(env, ext_set, GL_NV_primitive_restart) } -static void extgl_InitNVFragmentProgram(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_fragment_program) - return; - glProgramNamedParameter4fNV = (glProgramNamedParameter4fNVPROC) extgl_GetProcAddress("glProgramNamedParameter4fNV"); - glProgramNamedParameter4dNV = (glProgramNamedParameter4dNVPROC) extgl_GetProcAddress("glProgramNamedParameter4dNV"); - glProgramNamedParameter4fvNV = (glProgramNamedParameter4fvNVPROC) extgl_GetProcAddress("glProgramNamedParameter4fvNV"); - glProgramNamedParameter4dvNV = (glProgramNamedParameter4dvNVPROC) extgl_GetProcAddress("glProgramNamedParameter4dvNV"); - glGetProgramNamedParameterfvNV = (glGetProgramNamedParameterfvNVPROC) extgl_GetProcAddress("glGetProgramNamedParameterfvNV"); - glGetProgramNamedParameterdvNV = (glGetProgramNamedParameterdvNVPROC) extgl_GetProcAddress("glGetProgramNamedParameterdvNV"); - glProgramLocalParameter4dNV = (glProgramLocalParameter4dNVPROC) extgl_GetProcAddress("glProgramLocalParameter4dNV"); - glProgramLocalParameter4dvNV = (glProgramLocalParameter4dvNVPROC) extgl_GetProcAddress("glProgramLocalParameter4dvNV"); - glProgramLocalParameter4fNV = (glProgramLocalParameter4fNVPROC) extgl_GetProcAddress("glProgramLocalParameter4fNV"); - glProgramLocalParameter4fvNV = (glProgramLocalParameter4fvNVPROC) extgl_GetProcAddress("glProgramLocalParameter4fvNV"); - glGetProgramLocalParameterdvNV = (glGetProgramLocalParameterdvNVPROC) extgl_GetProcAddress("glGetProgramLocalParameterdvNV"); - glGetProgramLocalParameterfvNV = (glGetProgramLocalParameterfvNVPROC) extgl_GetProcAddress("glGetProgramLocalParameterfvNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_fragment_program) -} - static void extgl_InitNVElementArray(JNIEnv *env, jobject ext_set) { if (!extgl_Extensions.GL_NV_element_array) @@ -1787,14 +1086,6 @@ static void extgl_InitNVElementArray(JNIEnv *env, jobject ext_set) } -static void extgl_InitEXTBlendFuncSeparate(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_blend_func_separate) - return; - glBlendFuncSeparateEXT = (glBlendFuncSeparateEXTPROC) extgl_GetProcAddress("glBlendFuncSeparateEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_blend_func_separate) -} - static void extgl_InitEXTCullVertex(JNIEnv *env, jobject ext_set) { if (!extgl_Extensions.GL_EXT_cull_vertex) @@ -1803,672 +1094,7 @@ static void extgl_InitEXTCullVertex(JNIEnv *env, jobject ext_set) glCullParameterdvEXT = (glCullParameterdvEXTPROC) extgl_GetProcAddress("glCullParameterdvEXT"); EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_cull_vertex) } - -static void extgl_InitARBVertexBufferObject(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_vertex_buffer_object) - return; - glBindBufferARB = (glBindBufferARBPROC) extgl_GetProcAddress("glBindBufferARB"); - glDeleteBuffersARB = (glDeleteBuffersARBPROC) extgl_GetProcAddress("glDeleteBuffersARB"); - glGenBuffersARB = (glGenBuffersARBPROC) extgl_GetProcAddress("glGenBuffersARB"); - glIsBufferARB = (glIsBufferARBPROC) extgl_GetProcAddress("glIsBufferARB"); - glBufferDataARB = (glBufferDataARBPROC) extgl_GetProcAddress("glBufferDataARB"); - glBufferSubDataARB = (glBufferSubDataARBPROC) extgl_GetProcAddress("glBufferSubDataARB"); - glGetBufferSubDataARB = (glGetBufferSubDataARBPROC) extgl_GetProcAddress("glGetBufferSubDataARB"); - glMapBufferARB = (glMapBufferARBPROC) extgl_GetProcAddress("glMapBufferARB"); - glUnmapBufferARB = (glUnmapBufferARBPROC) extgl_GetProcAddress("glUnmapBufferARB"); - glGetBufferParameterivARB = (glGetBufferParameterivARBPROC) extgl_GetProcAddress("glGetBufferParameterivARB"); - glGetBufferPointervARB = (glGetBufferPointervARBPROC) extgl_GetProcAddress("glGetBufferPointervARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_buffer_object) -} - -static void extgl_InitARBVertexProgram(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_vertex_program) - return; - glVertexAttrib1sARB = (glVertexAttrib1sARBPROC) extgl_GetProcAddress("glVertexAttrib1sARB"); - glVertexAttrib1fARB = (glVertexAttrib1fARBPROC) extgl_GetProcAddress("glVertexAttrib1fARB"); - glVertexAttrib1dARB = (glVertexAttrib1dARBPROC) extgl_GetProcAddress("glVertexAttrib1dARB"); - glVertexAttrib2sARB = (glVertexAttrib2sARBPROC) extgl_GetProcAddress("glVertexAttrib2sARB"); - glVertexAttrib2fARB = (glVertexAttrib2fARBPROC) extgl_GetProcAddress("glVertexAttrib2fARB"); - glVertexAttrib2dARB = (glVertexAttrib2dARBPROC) extgl_GetProcAddress("glVertexAttrib2dARB"); - glVertexAttrib3sARB = (glVertexAttrib3sARBPROC) extgl_GetProcAddress("glVertexAttrib3sARB"); - glVertexAttrib3fARB = (glVertexAttrib3fARBPROC) extgl_GetProcAddress("glVertexAttrib3fARB"); - glVertexAttrib3dARB = (glVertexAttrib3dARBPROC) extgl_GetProcAddress("glVertexAttrib3dARB"); - glVertexAttrib4sARB = (glVertexAttrib4sARBPROC) extgl_GetProcAddress("glVertexAttrib4sARB"); - glVertexAttrib4fARB = (glVertexAttrib4fARBPROC) extgl_GetProcAddress("glVertexAttrib4fARB"); - glVertexAttrib4dARB = (glVertexAttrib4dARBPROC) extgl_GetProcAddress("glVertexAttrib4dARB"); - glVertexAttrib4NubARB = (glVertexAttrib4NubARBPROC) extgl_GetProcAddress("glVertexAttrib4NubARB"); - glVertexAttrib1svARB = (glVertexAttrib1svARBPROC) extgl_GetProcAddress("glVertexAttrib1svARB"); - glVertexAttrib1fvARB = (glVertexAttrib1fvARBPROC) extgl_GetProcAddress("glVertexAttrib1fvARB"); - glVertexAttrib1dvARB = (glVertexAttrib1dvARBPROC) extgl_GetProcAddress("glVertexAttrib1dvARB"); - glVertexAttrib2svARB = (glVertexAttrib2svARBPROC) extgl_GetProcAddress("glVertexAttrib2svARB"); - glVertexAttrib2fvARB = (glVertexAttrib2fvARBPROC) extgl_GetProcAddress("glVertexAttrib2fvARB"); - glVertexAttrib2dvARB = (glVertexAttrib2dvARBPROC) extgl_GetProcAddress("glVertexAttrib2dvARB"); - glVertexAttrib3svARB = (glVertexAttrib3svARBPROC) extgl_GetProcAddress("glVertexAttrib3svARB"); - glVertexAttrib3fvARB = (glVertexAttrib3fvARBPROC) extgl_GetProcAddress("glVertexAttrib3fvARB"); - glVertexAttrib3dvARB = (glVertexAttrib3dvARBPROC) extgl_GetProcAddress("glVertexAttrib3dvARB"); - glVertexAttrib4bvARB = (glVertexAttrib4bvARBPROC) extgl_GetProcAddress("glVertexAttrib4bvARB"); - glVertexAttrib4svARB = (glVertexAttrib4svARBPROC) extgl_GetProcAddress("glVertexAttrib4svARB"); - glVertexAttrib4ivARB = (glVertexAttrib4ivARBPROC) extgl_GetProcAddress("glVertexAttrib4ivARB"); - glVertexAttrib4ubvARB = (glVertexAttrib4ubvARBPROC) extgl_GetProcAddress("glVertexAttrib4ubvARB"); - glVertexAttrib4usvARB = (glVertexAttrib4usvARBPROC) extgl_GetProcAddress("glVertexAttrib4usvARB"); - glVertexAttrib4uivARB = (glVertexAttrib4uivARBPROC) extgl_GetProcAddress("glVertexAttrib4uivARB"); - glVertexAttrib4fvARB = (glVertexAttrib4fvARBPROC) extgl_GetProcAddress("glVertexAttrib4fvARB"); - glVertexAttrib4dvARB = (glVertexAttrib4dvARBPROC) extgl_GetProcAddress("glVertexAttrib4dvARB"); - glVertexAttrib4NbvARB = (glVertexAttrib4NbvARBPROC) extgl_GetProcAddress("glVertexAttrib4NbvARB"); - glVertexAttrib4NsvARB = (glVertexAttrib4NsvARBPROC) extgl_GetProcAddress("glVertexAttrib4NsvARB"); - glVertexAttrib4NivARB = (glVertexAttrib4NivARBPROC) extgl_GetProcAddress("glVertexAttrib4NivARB"); - glVertexAttrib4NubvARB = (glVertexAttrib4NubvARBPROC) extgl_GetProcAddress("glVertexAttrib4NubvARB"); - glVertexAttrib4NusvARB = (glVertexAttrib4NusvARBPROC) extgl_GetProcAddress("glVertexAttrib4NusvARB"); - glVertexAttrib4NuivARB = (glVertexAttrib4NuivARBPROC) extgl_GetProcAddress("glVertexAttrib4NuivARB"); - glVertexAttribPointerARB = (glVertexAttribPointerARBPROC) extgl_GetProcAddress("glVertexAttribPointerARB"); - glEnableVertexAttribArrayARB = (glEnableVertexAttribArrayARBPROC) extgl_GetProcAddress("glEnableVertexAttribArrayARB"); - glDisableVertexAttribArrayARB = (glDisableVertexAttribArrayARBPROC) extgl_GetProcAddress("glDisableVertexAttribArrayARB"); - glProgramStringARB = (glProgramStringARBPROC) extgl_GetProcAddress("glProgramStringARB"); - glBindProgramARB = (glBindProgramARBPROC) extgl_GetProcAddress("glBindProgramARB"); - glDeleteProgramsARB = (glDeleteProgramsARBPROC) extgl_GetProcAddress("glDeleteProgramsARB"); - glGenProgramsARB = (glGenProgramsARBPROC) extgl_GetProcAddress("glGenProgramsARB"); - glProgramEnvParameter4dARB = (glProgramEnvParameter4dARBPROC) extgl_GetProcAddress("glProgramEnvParameter4dARB"); - glProgramEnvParameter4dvARB = (glProgramEnvParameter4dvARBPROC) extgl_GetProcAddress("glProgramEnvParameter4dvARB"); - glProgramEnvParameter4fARB = (glProgramEnvParameter4fARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fARB"); - glProgramEnvParameter4fvARB = (glProgramEnvParameter4fvARBPROC) extgl_GetProcAddress("glProgramEnvParameter4fvARB"); - glProgramLocalParameter4dARB = (glProgramLocalParameter4dARBPROC) extgl_GetProcAddress("glProgramLocalParameter4dARB"); - glProgramLocalParameter4dvARB = (glProgramLocalParameter4dvARBPROC) extgl_GetProcAddress("glProgramLocalParameter4dvARB"); - glProgramLocalParameter4fARB = (glProgramLocalParameter4fARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fARB"); - glProgramLocalParameter4fvARB = (glProgramLocalParameter4fvARBPROC) extgl_GetProcAddress("glProgramLocalParameter4fvARB"); - glGetProgramEnvParameterdvARB = (glGetProgramEnvParameterdvARBPROC) extgl_GetProcAddress("glGetProgramEnvParameterdvARB"); - glGetProgramEnvParameterfvARB = (glGetProgramEnvParameterfvARBPROC) extgl_GetProcAddress("glGetProgramEnvParameterfvARB"); - glGetProgramLocalParameterdvARB = (glGetProgramLocalParameterdvARBPROC) extgl_GetProcAddress("glGetProgramLocalParameterdvARB"); - glGetProgramLocalParameterfvARB = (glGetProgramLocalParameterfvARBPROC) extgl_GetProcAddress("glGetProgramLocalParameterfvARB"); - glGetProgramivARB = (glGetProgramivARBPROC) extgl_GetProcAddress("glGetProgramivARB"); - glGetProgramStringARB = (glGetProgramStringARBPROC) extgl_GetProcAddress("glGetProgramStringARB"); - glGetVertexAttribdvARB = (glGetVertexAttribdvARBPROC) extgl_GetProcAddress("glGetVertexAttribdvARB"); - glGetVertexAttribfvARB = (glGetVertexAttribfvARBPROC) extgl_GetProcAddress("glGetVertexAttribfvARB"); - glGetVertexAttribivARB = (glGetVertexAttribivARBPROC) extgl_GetProcAddress("glGetVertexAttribivARB"); - glGetVertexAttribPointervARB = (glGetVertexAttribPointervARBPROC) extgl_GetProcAddress("glGetVertexAttribPointervARB"); - glIsProgramARB = (glIsProgramARBPROC) extgl_GetProcAddress("glIsProgramARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_program) -} - -static void extgl_InitEXTStencilTwoSide(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_stencil_two_side) - return; - glActiveStencilFaceEXT = (glActiveStencilFaceEXTPROC) extgl_GetProcAddress("glActiveStencilFaceEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_stencil_two_side) -} - -static void extgl_InitARBWindowPos(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_window_pos) - return; - glWindowPos2dARB = (glWindowPos2dARBPROC) extgl_GetProcAddress("glWindowPos2dARB"); - glWindowPos2fARB = (glWindowPos2fARBPROC) extgl_GetProcAddress("glWindowPos2fARB"); - glWindowPos2iARB = (glWindowPos2iARBPROC) extgl_GetProcAddress("glWindowPos2iARB"); - glWindowPos2sARB = (glWindowPos2sARBPROC) extgl_GetProcAddress("glWindowPos2sARB"); - glWindowPos2dvARB = (glWindowPos2dvARBPROC) extgl_GetProcAddress("glWindowPos2dvARB"); - glWindowPos2fvARB = (glWindowPos2fvARBPROC) extgl_GetProcAddress("glWindowPos2fvARB"); - glWindowPos2ivARB = (glWindowPos2ivARBPROC) extgl_GetProcAddress("glWindowPos2ivARB"); - glWindowPos2svARB = (glWindowPos2svARBPROC) extgl_GetProcAddress("glWindowPos2svARB"); - glWindowPos3dARB = (glWindowPos3dARBPROC) extgl_GetProcAddress("glWindowPos3dARB"); - glWindowPos3fARB = (glWindowPos3fARBPROC) extgl_GetProcAddress("glWindowPos3fARB"); - glWindowPos3iARB = (glWindowPos3iARBPROC) extgl_GetProcAddress("glWindowPos3iARB"); - glWindowPos3sARB = (glWindowPos3sARBPROC) extgl_GetProcAddress("glWindowPos3sARB"); - glWindowPos3dvARB = (glWindowPos3dvARBPROC) extgl_GetProcAddress("glWindowPos3dvARB"); - glWindowPos3fvARB = (glWindowPos3fvARBPROC) extgl_GetProcAddress("glWindowPos3fvARB"); - glWindowPos3ivARB = (glWindowPos3ivARBPROC) extgl_GetProcAddress("glWindowPos3ivARB"); - glWindowPos3svARB = (glWindowPos3svARBPROC) extgl_GetProcAddress("glWindowPos3svARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_window_pos) -} - -static void extgl_InitARBTextureCompression(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_texture_compression) - return; - glCompressedTexImage3DARB = (glCompressedTexImage3DARBPROC) extgl_GetProcAddress("glCompressedTexImage3DARB"); - glCompressedTexImage2DARB = (glCompressedTexImage2DARBPROC) extgl_GetProcAddress("glCompressedTexImage2DARB"); - glCompressedTexImage1DARB = (glCompressedTexImage1DARBPROC) extgl_GetProcAddress("glCompressedTexImage1DARB"); - glCompressedTexSubImage3DARB = (glCompressedTexSubImage3DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage3DARB"); - glCompressedTexSubImage2DARB = (glCompressedTexSubImage2DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage2DARB"); - glCompressedTexSubImage1DARB = (glCompressedTexSubImage1DARBPROC) extgl_GetProcAddress("glCompressedTexSubImage1DARB"); - glGetCompressedTexImageARB = (glGetCompressedTexImageARBPROC) extgl_GetProcAddress("glGetCompressedTexImageARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_texture_compression) -} - -static void extgl_InitNVPointSprite(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_point_sprite) - return; - glPointParameteriNV = (glPointParameteriNVPROC) extgl_GetProcAddress("glPointParameteriNV"); - glPointParameterivNV = (glPointParameterivNVPROC) extgl_GetProcAddress("glPointParameterivNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_point_sprite) -} - -static void extgl_InitNVOcclusionQuery(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_occlusion_query) - return; - glGenOcclusionQueriesNV = (glGenOcclusionQueriesNVPROC) extgl_GetProcAddress("glGenOcclusionQueriesNV"); - glDeleteOcclusionQueriesNV = (glDeleteOcclusionQueriesNVPROC) extgl_GetProcAddress("glDeleteOcclusionQueriesNV"); - glIsOcclusionQueryNV = (glIsOcclusionQueryNVPROC) extgl_GetProcAddress("glIsOcclusionQueryNV"); - glBeginOcclusionQueryNV = (glBeginOcclusionQueryNVPROC) extgl_GetProcAddress("glBeginOcclusionQueryNV"); - glEndOcclusionQueryNV = (glEndOcclusionQueryNVPROC) extgl_GetProcAddress("glEndOcclusionQueryNV"); - glGetOcclusionQueryivNV = (glGetOcclusionQueryivNVPROC) extgl_GetProcAddress("glGetOcclusionQueryivNV"); - glGetOcclusionQueryuivNV = (glGetOcclusionQueryuivNVPROC) extgl_GetProcAddress("glGetOcclusionQueryuivNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_occlusion_query) -} - -static void extgl_InitATIVertexArrayObject(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_vertex_array_object) - return; - glNewObjectBufferATI = (glNewObjectBufferATIPROC) extgl_GetProcAddress("glNewObjectBufferATI"); - glIsObjectBufferATI = (glIsObjectBufferATIPROC) extgl_GetProcAddress("glIsObjectBufferATI"); - glUpdateObjectBufferATI = (glUpdateObjectBufferATIPROC) extgl_GetProcAddress("glUpdateObjectBufferATI"); - glGetObjectBufferfvATI = (glGetObjectBufferfvATIPROC) extgl_GetProcAddress("glGetObjectBufferfvATI"); - glGetObjectBufferivATI = (glGetObjectBufferivATIPROC) extgl_GetProcAddress("glGetObjectBufferivATI"); - glFreeObjectBufferATI = (glFreeObjectBufferATIPROC) extgl_GetProcAddress("glFreeObjectBufferATI"); - glArrayObjectATI = (glArrayObjectATIPROC) extgl_GetProcAddress("glArrayObjectATI"); - glGetArrayObjectfvATI = (glGetArrayObjectfvATIPROC) extgl_GetProcAddress("glGetArrayObjectfvATI"); - glGetArrayObjectivATI = (glGetArrayObjectivATIPROC) extgl_GetProcAddress("glGetArrayObjectivATI"); - glVariantArrayObjectATI = (glVariantArrayObjectATIPROC) extgl_GetProcAddress("glVariantArrayObjectATI"); - glGetVariantArrayObjectfvATI = (glGetVariantArrayObjectfvATIPROC) extgl_GetProcAddress("glGetVariantArrayObjectfvATI"); - glGetVariantArrayObjectivATI = (glGetVariantArrayObjectivATIPROC) extgl_GetProcAddress("glGetVariantArrayObjectivATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_vertex_array_object) -} - -static void extgl_InitATIVertexStreams(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_vertex_streams) - return; - glClientActiveVertexStreamATI = (glClientActiveVertexStreamATIPROC) extgl_GetProcAddress("glClientActiveVertexStreamATI"); - glVertexBlendEnviATI = (glVertexBlendEnviATIPROC) extgl_GetProcAddress("glVertexBlendEnviATI"); - glVertexBlendEnvfATI = (glVertexBlendEnvfATIPROC) extgl_GetProcAddress("glVertexBlendEnvfATI"); - glVertexStream1sATI = (glVertexStream1sATIPROC) extgl_GetProcAddress("glVertexStream1sATI"); - glVertexStream1svATI = (glVertexStream1svATIPROC) extgl_GetProcAddress("glVertexStream1svATI"); - glVertexStream1iATI = (glVertexStream1iATIPROC) extgl_GetProcAddress("glVertexStream1iATI"); - glVertexStream1ivATI = (glVertexStream1ivATIPROC) extgl_GetProcAddress("glVertexStream1ivATI"); - glVertexStream1fATI = (glVertexStream1fATIPROC) extgl_GetProcAddress("glVertexStream1fATI"); - glVertexStream1fvATI = (glVertexStream1fvATIPROC) extgl_GetProcAddress("glVertexStream1fvATI"); - glVertexStream1dATI = (glVertexStream1dATIPROC) extgl_GetProcAddress("glVertexStream1dATI"); - glVertexStream1dvATI = (glVertexStream1dvATIPROC) extgl_GetProcAddress("glVertexStream1dvATI"); - glVertexStream2sATI = (glVertexStream2sATIPROC) extgl_GetProcAddress("glVertexStream2sATI"); - glVertexStream2svATI = (glVertexStream2svATIPROC) extgl_GetProcAddress("glVertexStream2svATI"); - glVertexStream2iATI = (glVertexStream2iATIPROC) extgl_GetProcAddress("glVertexStream2iATI"); - glVertexStream2ivATI = (glVertexStream2ivATIPROC) extgl_GetProcAddress("glVertexStream2ivATI"); - glVertexStream2fATI = (glVertexStream2fATIPROC) extgl_GetProcAddress("glVertexStream2fATI"); - glVertexStream2fvATI = (glVertexStream2fvATIPROC) extgl_GetProcAddress("glVertexStream2fvATI"); - glVertexStream2dATI = (glVertexStream2dATIPROC) extgl_GetProcAddress("glVertexStream2dATI"); - glVertexStream2dvATI = (glVertexStream2dvATIPROC) extgl_GetProcAddress("glVertexStream2dvATI"); - glVertexStream3sATI = (glVertexStream3sATIPROC) extgl_GetProcAddress("glVertexStream3sATI"); - glVertexStream3svATI = (glVertexStream3svATIPROC) extgl_GetProcAddress("glVertexStream3svATI"); - glVertexStream3iATI = (glVertexStream3iATIPROC) extgl_GetProcAddress("glVertexStream3iATI"); - glVertexStream3ivATI = (glVertexStream3ivATIPROC) extgl_GetProcAddress("glVertexStream3ivATI"); - glVertexStream3fATI = (glVertexStream3fATIPROC) extgl_GetProcAddress("glVertexStream3fATI"); - glVertexStream3fvATI = (glVertexStream3fvATIPROC) extgl_GetProcAddress("glVertexStream3fvATI"); - glVertexStream3dATI = (glVertexStream3dATIPROC) extgl_GetProcAddress("glVertexStream3dATI"); - glVertexStream3dvATI = (glVertexStream3dvATIPROC) extgl_GetProcAddress("glVertexStream3dvATI"); - glVertexStream4sATI = (glVertexStream4sATIPROC) extgl_GetProcAddress("glVertexStream4sATI"); - glVertexStream4svATI = (glVertexStream4svATIPROC) extgl_GetProcAddress("glVertexStream4svATI"); - glVertexStream4iATI = (glVertexStream4iATIPROC) extgl_GetProcAddress("glVertexStream4iATI"); - glVertexStream4ivATI = (glVertexStream4ivATIPROC) extgl_GetProcAddress("glVertexStream4ivATI"); - glVertexStream4fATI = (glVertexStream4fATIPROC) extgl_GetProcAddress("glVertexStream4fATI"); - glVertexStream4fvATI = (glVertexStream4fvATIPROC) extgl_GetProcAddress("glVertexStream4fvATI"); - glVertexStream4dATI = (glVertexStream4dATIPROC) extgl_GetProcAddress("glVertexStream4dATI"); - glVertexStream4dvATI = (glVertexStream4dvATIPROC) extgl_GetProcAddress("glVertexStream4dvATI"); - glNormalStream3bATI = (glNormalStream3bATIPROC) extgl_GetProcAddress("glNormalStream3bATI"); - glNormalStream3bvATI = (glNormalStream3bvATIPROC) extgl_GetProcAddress("glNormalStream3bvATI"); - glNormalStream3sATI = (glNormalStream3sATIPROC) extgl_GetProcAddress("glNormalStream3sATI"); - glNormalStream3svATI = (glNormalStream3svATIPROC) extgl_GetProcAddress("glNormalStream3svATI"); - glNormalStream3iATI = (glNormalStream3iATIPROC) extgl_GetProcAddress("glNormalStream3iATI"); - glNormalStream3ivATI = (glNormalStream3ivATIPROC) extgl_GetProcAddress("glNormalStream3ivATI"); - glNormalStream3fATI = (glNormalStream3fATIPROC) extgl_GetProcAddress("glNormalStream3fATI"); - glNormalStream3fvATI = (glNormalStream3fvATIPROC) extgl_GetProcAddress("glNormalStream3fvATI"); - glNormalStream3dATI = (glNormalStream3dATIPROC) extgl_GetProcAddress("glNormalStream3dATI"); - glNormalStream3dvATI = (glNormalStream3dvATIPROC) extgl_GetProcAddress("glNormalStream3dvATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_vertex_streams) -} - -static void extgl_InitATIElementArray(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_element_array) - return; - glElementPointerATI = (glElementPointerATIPROC) extgl_GetProcAddress("glElementPointerATI"); - glDrawElementArrayATI = (glDrawElementArrayATIPROC) extgl_GetProcAddress("glDrawElementArrayATI"); - glDrawRangeElementArrayATI = (glDrawRangeElementArrayATIPROC) extgl_GetProcAddress("glDrawRangeElementArrayATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_element_array) -} - -static void extgl_InitATIFragmentShader(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_fragment_shader) - return; - glGenFragmentShadersATI = (glGenFragmentShadersATIPROC) extgl_GetProcAddress("glGenFragmentShadersATI"); - glBindFragmentShaderATI = (glBindFragmentShaderATIPROC) extgl_GetProcAddress("glBindFragmentShaderATI"); - glDeleteFragmentShaderATI = (glDeleteFragmentShaderATIPROC) extgl_GetProcAddress("glDeleteFragmentShaderATI"); - glBeginFragmentShaderATI = (glBeginFragmentShaderATIPROC) extgl_GetProcAddress("glBeginFragmentShaderATI"); - glEndFragmentShaderATI = (glEndFragmentShaderATIPROC) extgl_GetProcAddress("glEndFragmentShaderATI"); - glPassTexCoordATI = (glPassTexCoordATIPROC) extgl_GetProcAddress("glPassTexCoordATI"); - glSampleMapATI = (glSampleMapATIPROC) extgl_GetProcAddress("glSampleMapATI"); - glColorFragmentOp1ATI = (glColorFragmentOp1ATIPROC) extgl_GetProcAddress("glColorFragmentOp1ATI"); - glColorFragmentOp2ATI = (glColorFragmentOp2ATIPROC) extgl_GetProcAddress("glColorFragmentOp2ATI"); - glColorFragmentOp3ATI = (glColorFragmentOp3ATIPROC) extgl_GetProcAddress("glColorFragmentOp3ATI"); - glAlphaFragmentOp1ATI = (glAlphaFragmentOp1ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp1ATI"); - glAlphaFragmentOp2ATI = (glAlphaFragmentOp2ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp2ATI"); - glAlphaFragmentOp3ATI = (glAlphaFragmentOp3ATIPROC) extgl_GetProcAddress("glAlphaFragmentOp3ATI"); - glSetFragmentShaderConstantATI = (glSetFragmentShaderConstantATIPROC) extgl_GetProcAddress("glSetFragmentShaderConstantATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_fragment_shader) -} - - -static void extgl_InitATIEnvmapBumpmap(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_envmap_bumpmap) - return; - glTexBumpParameterivATI = (glTexBumpParameterivATIPROC) extgl_GetProcAddress("glTexBumpParameterivATI"); - glTexBumpParameterfvATI = (glTexBumpParameterfvATIPROC) extgl_GetProcAddress("glTexBumpParameterfvATI"); - glGetTexBumpParameterivATI = (glGetTexBumpParameterivATIPROC) extgl_GetProcAddress("glGetTexBumpParameterivATI"); - glGetTexBumpParameterfvATI = (glGetTexBumpParameterfvATIPROC) extgl_GetProcAddress("glGetTexBumpParameterfvATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_envmap_bumpmap) -} - -static void extgl_InitEXTVertexShader(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_vertex_shader) - return; - glBeginVertexShaderEXT = (glBeginVertexShaderEXTPROC) extgl_GetProcAddress("glBeginVertexShaderEXT"); - glEndVertexShaderEXT = (glEndVertexShaderEXTPROC) extgl_GetProcAddress("glEndVertexShaderEXT"); - glBindVertexShaderEXT = (glBindVertexShaderEXTPROC) extgl_GetProcAddress("glBindVertexShaderEXT"); - glGenVertexShadersEXT = (glGenVertexShadersEXTPROC) extgl_GetProcAddress("glGenVertexShadersEXT"); - glDeleteVertexShaderEXT = (glDeleteVertexShaderEXTPROC) extgl_GetProcAddress("glDeleteVertexShaderEXT"); - glShaderOp1EXT = (glShaderOp1EXTPROC) extgl_GetProcAddress("glShaderOp1EXT"); - glShaderOp2EXT = (glShaderOp2EXTPROC) extgl_GetProcAddress("glShaderOp2EXT"); - glShaderOp3EXT = (glShaderOp3EXTPROC) extgl_GetProcAddress("glShaderOp3EXT"); - glSwizzleEXT = (glSwizzleEXTPROC) extgl_GetProcAddress("glSwizzleEXT"); - glWriteMaskEXT = (glWriteMaskEXTPROC) extgl_GetProcAddress("glWriteMaskEXT"); - glInsertComponentEXT = (glInsertComponentEXTPROC) extgl_GetProcAddress("glInsertComponentEXT"); - glExtractComponentEXT = (glExtractComponentEXTPROC) extgl_GetProcAddress("glExtractComponentEXT"); - glGenSymbolsEXT = (glGenSymbolsEXTPROC) extgl_GetProcAddress("glGenSymbolsEXT"); - glSetInvariantEXT = (glSetInvariantEXTPROC) extgl_GetProcAddress("glSetInvarianceEXT"); - glSetLocalConstantEXT = (glSetLocalConstantEXTPROC) extgl_GetProcAddress("glSetLocalConstantEXT"); - glVariantbvEXT = (glVariantbvEXTPROC) extgl_GetProcAddress("glVariantbvEXT"); - glVariantsvEXT = (glVariantsvEXTPROC) extgl_GetProcAddress("glVariantsvEXT"); - glVariantivEXT = (glVariantivEXTPROC) extgl_GetProcAddress("glVariantivEXT"); - glVariantfvEXT = (glVariantfvEXTPROC) extgl_GetProcAddress("glVariantfvEXT"); - glVariantdvEXT = (glVariantdvEXTPROC) extgl_GetProcAddress("glVariantdvEXT"); - glVariantubvEXT = (glVariantubvEXTPROC) extgl_GetProcAddress("glVariantubvEXT"); - glVariantusvEXT = (glVariantusvEXTPROC) extgl_GetProcAddress("glVariantusvEXT"); - glVariantuivEXT = (glVariantuivEXTPROC) extgl_GetProcAddress("glVariantuivEXT"); - glVariantPointerEXT = (glVariantPointerEXTPROC) extgl_GetProcAddress("glVariantPointerEXT"); - glEnableVariantClientStateEXT = (glEnableVariantClientStateEXTPROC) extgl_GetProcAddress("glEnableVariantClientStateEXT"); - glDisableVariantClientStateEXT = (glDisableVariantClientStateEXTPROC) extgl_GetProcAddress("glDisableVariantClientStateEXT"); - glBindLightParameterEXT = (glBindLightParameterEXTPROC) extgl_GetProcAddress("glBindLightParameterEXT"); - glBindMaterialParameterEXT = (glBindMaterialParameterEXTPROC) extgl_GetProcAddress("glBindMaterialParameterEXT"); - glBindTexGenParameterEXT = (glBindTexGenParameterEXTPROC) extgl_GetProcAddress("glBindTexGenParameterEXT"); - glBindTextureUnitParameterEXT = (glBindTextureUnitParameterEXTPROC) extgl_GetProcAddress("glBindTextureUnitParameterEXT"); - glBindParameterEXT = (glBindParameterEXTPROC) extgl_GetProcAddress("glBindParameterEXT"); - glIsVariantEnabledEXT = (glIsVariantEnabledEXTPROC) extgl_GetProcAddress("glIsVariantEnabledEXT"); - glGetVariantBooleanvEXT = (glGetVariantBooleanvEXTPROC) extgl_GetProcAddress("glGetVariantBooleanvEXT"); - glGetVariantIntegervEXT = (glGetVariantIntegervEXTPROC) extgl_GetProcAddress("glGetVariantIntegervEXT"); - glGetVariantFloatvEXT = (glGetVariantFloatvEXTPROC) extgl_GetProcAddress("glGetVariantFloatvEXT"); - glGetVariantPointervEXT = (glGetVariantPointervEXTPROC) extgl_GetProcAddress("glGetVariantPointervEXT"); - glGetInvariantBooleanvEXT = (glGetInvariantBooleanvEXTPROC) extgl_GetProcAddress("glGetInvariantBooleanvEXT"); - glGetInvariantIntegervEXT = (glGetInvariantIntegervEXTPROC) extgl_GetProcAddress("glGetInvariantIntegervEXT"); - glGetInvariantFloatvEXT = (glGetInvariantFloatvEXTPROC) extgl_GetProcAddress("glGetInvariantFloatvEXT"); - glGetLocalConstantBooleanvEXT = (glGetLocalConstantBooleanvEXTPROC) extgl_GetProcAddress("glGetLocalConstantBooleanvEXT"); - glGetLocalConstantIntegervEXT = (glGetLocalConstantIntegervEXTPROC) extgl_GetProcAddress("glGetLocalConstantIntegervEXT"); - glGetLocalConstantFloatvEXT = (glGetLocalConstantFloatvEXTPROC) extgl_GetProcAddress("glGetLocalConstantFloatvEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_vertex_shader) -} - -static void extgl_InitARBMatrixPalette(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_matrix_palette) - return; - glCurrentPaletteMatrixARB = (glCurrentPaletteMatrixARBPROC) extgl_GetProcAddress("glCurrentPaletteMatrixARB"); - glMatrixIndexubvARB = (glMatrixIndexubvARBPROC) extgl_GetProcAddress("glMatrixIndexubvARB"); - glMatrixIndexusvARB = (glMatrixIndexusvARBPROC) extgl_GetProcAddress("glMatrixIndexusvARB"); - glMatrixIndexuivARB = (glMatrixIndexuivARBPROC) extgl_GetProcAddress("glMatrixIndexuivARB"); - glMatrixIndexPointerARB = (glMatrixIndexPointerARBPROC) extgl_GetProcAddress("glMatrixIndexPointerARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_matrix_palette) -} - -static void extgl_InitEXTMultiDrawArrays(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_multi_draw_arrays) - return; - glMultiDrawArraysEXT = (glMultiDrawArraysEXTPROC) extgl_GetProcAddress("glMultiDrawArraysEXT"); - glMultiDrawElementsEXT = (glMultiDrawElementsEXTPROC) extgl_GetProcAddress("glMultiDrawElementsEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_multi_draw_arrays) -} - -static void extgl_InitARBVertexBlend(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_vertex_blend) - return; - glWeightbvARB = (glWeightbvARBPROC) extgl_GetProcAddress("glWeightbvARB"); - glWeightsvARB = (glWeightsvARBPROC) extgl_GetProcAddress("glWeightsvARB"); - glWeightivARB = (glWeightivARBPROC) extgl_GetProcAddress("glWeightivARB"); - glWeightfvARB = (glWeightfvARBPROC) extgl_GetProcAddress("glWeightfvARB"); - glWeightdvARB = (glWeightdvARBPROC) extgl_GetProcAddress("glWeightdvARB"); - glWeightubvARB = (glWeightubvARBPROC) extgl_GetProcAddress("glWeightubvARB"); - glWeightusvARB = (glWeightusvARBPROC) extgl_GetProcAddress("glWeightusvARB"); - glWeightuivARB = (glWeightuivARBPROC) extgl_GetProcAddress("glWeightuivARB"); - glWeightPointerARB = (glWeightPointerARBPROC) extgl_GetProcAddress("glWeightPointerARB"); - glVertexBlendARB = (glVertexBlendARBPROC) extgl_GetProcAddress("glVertexBlendARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_blend) -} - -static void extgl_InitARBPointParameters(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_point_parameters) - return; - glPointParameterfARB = (glPointParameterfARBPROC) extgl_GetProcAddress("glPointParameterfARB"); - glPointParameterfvARB = (glPointParameterfvARBPROC) extgl_GetProcAddress("glPointParameterfvARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_point_parameters) -} - -static void extgl_InitATIPNTriangles(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_pn_triangles) - return; - glPNTrianglesiATI = (glPNTrianglesiATIPROC) extgl_GetProcAddress("glPNTrianglesiATI"); - glPNTrianglesfATI = (glPNTrianglesfATIPROC) extgl_GetProcAddress("glPNTrianglesfATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_pn_triangles) -} - -static void extgl_InitATISeparateStencil(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ATI_separate_stencil) - return; - glStencilOpSeparateATI = (glStencilOpSeparateATIPROC)extgl_GetProcAddress("glStencilOpSeparateATI"); - glStencilFuncSeparateATI = (glStencilFuncSeparateATIPROC)extgl_GetProcAddress("glStencilFuncSeparateATI"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_separate_stencil) -} - -static void extgl_InitNVEvaluators(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_evaluators) - return; - glMapControlPointsNV = (glMapControlPointsNVPROC) extgl_GetProcAddress("glMapControlPointsNV"); - glMapParameterivNV = (glMapParameterivNVPROC) extgl_GetProcAddress("glMapParameterivNV"); - glMapParameterfvNV = (glMapParameterfvNVPROC) extgl_GetProcAddress("glMapParameterfvNV"); - glGetMapControlPointsNV = (glGetMapControlPointsNVPROC) extgl_GetProcAddress("glGetMapControlPointsNV"); - glGetMapParameterivNV = (glGetMapParameterivNVPROC) extgl_GetProcAddress("glGetMapParameterivNV"); - glGetMapParameterfvNV = (glGetMapParameterfvNVPROC) extgl_GetProcAddress("glGetMapParameterfvNV"); - glGetMapAttribParameterivNV = (glGetMapAttribParameterivNVPROC) extgl_GetProcAddress("glGetMapAttribParameterivNV"); - glGetMapAttribParameterfvNV = (glGetMapAttribParameterfvNVPROC) extgl_GetProcAddress("glGetMapAttribParameterfvNV"); - glEvalMapsNV = (glEvalMapsNVPROC) extgl_GetProcAddress("glEvalMapsNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_evaluators) -} - -static void extgl_InitNVRegisterCombiners2(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_register_combiners2) - return; - glCombinerStageParameterfvNV = (glCombinerStageParameterfvNVPROC) extgl_GetProcAddress("glCombinerStageParameterfvNV"); - glGetCombinerStageParameterfvNV = (glGetCombinerStageParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerStageParameterfvNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_register_combiners2) -} - -static void extgl_InitNVFence(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_fence) - return; - glGenFencesNV = (glGenFencesNVPROC) extgl_GetProcAddress("glGenFencesNV"); - glDeleteFencesNV = (glDeleteFencesNVPROC) extgl_GetProcAddress("glDeleteFencesNV"); - glSetFenceNV = (glSetFenceNVPROC) extgl_GetProcAddress("glSetFenceNV"); - glTestFenceNV = (glTestFenceNVPROC) extgl_GetProcAddress("glTestFenceNV"); - glFinishFenceNV = (glFinishFenceNVPROC) extgl_GetProcAddress("glFinishFenceNV"); - glIsFenceNV = (glIsFenceNVPROC) extgl_GetProcAddress("glIsFenceNV"); - glGetFenceivNV = (glGetFenceivNVPROC) extgl_GetProcAddress("glGetFenceivNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_fence) -} - -static void extgl_InitNVVertexProgram(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_vertex_program) - return; - glBindProgramNV = (glBindProgramNVPROC) extgl_GetProcAddress("glBindProgramNV"); - glDeleteProgramsNV = (glDeleteProgramsNVPROC) extgl_GetProcAddress("glDeleteProgramsNV"); - glExecuteProgramNV = (glExecuteProgramNVPROC) extgl_GetProcAddress("glExecuteProgramNV"); - glGenProgramsNV = (glGenProgramsNVPROC) extgl_GetProcAddress("glGenProgramsNV"); - glAreProgramsResidentNV = (glAreProgramsResidentNVPROC) extgl_GetProcAddress("glAreProgramsResidentNV"); - glRequestResidentProgramsNV = (glRequestResidentProgramsNVPROC) extgl_GetProcAddress("glRequestResidentProgramsNV"); - glGetProgramParameterfvNV = (glGetProgramParameterfvNVPROC) extgl_GetProcAddress("glGetProgramParameterfvNV"); - glGetProgramParameterdvNV = (glGetProgramParameterdvNVPROC) extgl_GetProcAddress("glGetProgramParameterdvNV"); - glGetProgramivNV = (glGetProgramivNVPROC) extgl_GetProcAddress("glGetProgramivNV"); - glGetProgramStringNV = (glGetProgramStringNVPROC) extgl_GetProcAddress("glGetProgramStringNV"); - glGetTrackMatrixivNV = (glGetTrackMatrixivNVPROC) extgl_GetProcAddress("glGetTrackMatrixivNV"); - glGetVertexAttribdvNV = (glGetVertexAttribdvNVPROC) extgl_GetProcAddress("glGetVertexAttribdvNV"); - glGetVertexAttribfvNV = (glGetVertexAttribfvNVPROC) extgl_GetProcAddress("glGetVertexAttribfvNV"); - glGetVertexAttribivNV = (glGetVertexAttribivNVPROC) extgl_GetProcAddress("glGetVertexAttribivNV"); - glGetVertexAttribPointervNV = (glGetVertexAttribPointervNVPROC) extgl_GetProcAddress("glGetVertexAttribPointervNV"); - glIsProgramNV = (glIsProgramNVPROC) extgl_GetProcAddress("glIsProgramNV"); - glLoadProgramNV = (glLoadProgramNVPROC) extgl_GetProcAddress("glLoadProgramNV"); - glProgramParameter4fNV = (glProgramParameter4fNVPROC) extgl_GetProcAddress("glProgramParameter4fNV"); - glProgramParameter4dNV = (glProgramParameter4dNVPROC) extgl_GetProcAddress("glProgramParameter4dNV"); - glProgramParameter4dvNV = (glProgramParameter4dvNVPROC) extgl_GetProcAddress("glProgramParameter4dvNV"); - glProgramParameter4fvNV = (glProgramParameter4fvNVPROC) extgl_GetProcAddress("glProgramParameter4fvNV"); - glProgramParameters4dvNV = (glProgramParameters4dvNVPROC) extgl_GetProcAddress("glProgramParameters4dvNV"); - glProgramParameters4fvNV = (glProgramParameters4fvNVPROC) extgl_GetProcAddress("glProgramParameters4fvNV"); - glTrackMatrixNV = (glTrackMatrixNVPROC) extgl_GetProcAddress("glTrackMatrixNV"); - glVertexAttribPointerNV = (glVertexAttribPointerNVPROC) extgl_GetProcAddress("glVertexAttribPointerNV"); - glVertexAttrib1sNV = (glVertexAttrib1sNVPROC) extgl_GetProcAddress("glVertexAttrib1sNV"); - glVertexAttrib1fNV = (glVertexAttrib1fNVPROC) extgl_GetProcAddress("glVertexAttrib1fNV"); - glVertexAttrib1dNV = (glVertexAttrib1dNVPROC) extgl_GetProcAddress("glVertexAttrib1dNV"); - glVertexAttrib2sNV = (glVertexAttrib2sNVPROC) extgl_GetProcAddress("glVertexAttrib2sNV"); - glVertexAttrib2fNV = (glVertexAttrib2fNVPROC) extgl_GetProcAddress("glVertexAttrib2fNV"); - glVertexAttrib2dNV = (glVertexAttrib2dNVPROC) extgl_GetProcAddress("glVertexAttrib2dNV"); - glVertexAttrib3sNV = (glVertexAttrib3sNVPROC) extgl_GetProcAddress("glVertexAttrib3sNV"); - glVertexAttrib3fNV = (glVertexAttrib3fNVPROC) extgl_GetProcAddress("glVertexAttrib3fNV"); - glVertexAttrib3dNV = (glVertexAttrib3dNVPROC) extgl_GetProcAddress("glVertexAttrib3dNV"); - glVertexAttrib4sNV = (glVertexAttrib4sNVPROC) extgl_GetProcAddress("glVertexAttrib4sNV"); - glVertexAttrib4fNV = (glVertexAttrib4fNVPROC) extgl_GetProcAddress("glVertexAttrib4fNV"); - glVertexAttrib4dNV = (glVertexAttrib4dNVPROC) extgl_GetProcAddress("glVertexAttrib4dNV"); - glVertexAttrib4ubNV = (glVertexAttrib4ubNVPROC) extgl_GetProcAddress("glVertexAttrib4ubNV"); - glVertexAttrib1svNV = (glVertexAttrib1svNVPROC) extgl_GetProcAddress("glVertexAttrib1svNV"); - glVertexAttrib1fvNV = (glVertexAttrib1fvNVPROC) extgl_GetProcAddress("glVertexAttrib1fvNV"); - glVertexAttrib1dvNV = (glVertexAttrib1dvNVPROC) extgl_GetProcAddress("glVertexAttrib1dvNV"); - glVertexAttrib2svNV = (glVertexAttrib2svNVPROC) extgl_GetProcAddress("glVertexAttrib2svNV"); - glVertexAttrib2fvNV = (glVertexAttrib2fvNVPROC) extgl_GetProcAddress("glVertexAttrib2fvNV"); - glVertexAttrib2dvNV = (glVertexAttrib2dvNVPROC) extgl_GetProcAddress("glVertexAttrib2dvNV"); - glVertexAttrib3svNV = (glVertexAttrib3svNVPROC) extgl_GetProcAddress("glVertexAttrib3svNV"); - glVertexAttrib3fvNV = (glVertexAttrib3fvNVPROC) extgl_GetProcAddress("glVertexAttrib3fvNV"); - glVertexAttrib3dvNV = (glVertexAttrib3dvNVPROC) extgl_GetProcAddress("glVertexAttrib3dvNV"); - glVertexAttrib4svNV = (glVertexAttrib4svNVPROC) extgl_GetProcAddress("glVertexAttrib4svNV"); - glVertexAttrib4fvNV = (glVertexAttrib4fvNVPROC) extgl_GetProcAddress("glVertexAttrib4fvNV"); - glVertexAttrib4dvNV = (glVertexAttrib4dvNVPROC) extgl_GetProcAddress("glVertexAttrib4dvNV"); - glVertexAttrib4ubvNV = (glVertexAttrib4ubvNVPROC) extgl_GetProcAddress("glVertexAttrib4ubvNV"); - glVertexAttribs1svNV = (glVertexAttribs1svNVPROC) extgl_GetProcAddress("glVertexAttribs1svNV"); - glVertexAttribs1fvNV = (glVertexAttribs1fvNVPROC) extgl_GetProcAddress("glVertexAttribs1fvNV"); - glVertexAttribs1dvNV = (glVertexAttribs1dvNVPROC) extgl_GetProcAddress("glVertexAttribs1dvNV"); - glVertexAttribs2svNV = (glVertexAttribs2svNVPROC) extgl_GetProcAddress("glVertexAttribs2svNV"); - glVertexAttribs2fvNV = (glVertexAttribs2fvNVPROC) extgl_GetProcAddress("glVertexAttribs2fvNV"); - glVertexAttribs2dvNV = (glVertexAttribs2dvNVPROC) extgl_GetProcAddress("glVertexAttribs2dvNV"); - glVertexAttribs3svNV = (glVertexAttribs3svNVPROC) extgl_GetProcAddress("glVertexAttribs3svNV"); - glVertexAttribs3fvNV = (glVertexAttribs3fvNVPROC) extgl_GetProcAddress("glVertexAttribs3fvNV"); - glVertexAttribs3dvNV = (glVertexAttribs3dvNVPROC) extgl_GetProcAddress("glVertexAttribs3dvNV"); - glVertexAttribs4svNV = (glVertexAttribs4svNVPROC) extgl_GetProcAddress("glVertexAttribs4svNV"); - glVertexAttribs4fvNV = (glVertexAttribs4fvNVPROC) extgl_GetProcAddress("glVertexAttribs4fvNV"); - glVertexAttribs4dvNV = (glVertexAttribs4dvNVPROC) extgl_GetProcAddress("glVertexAttribs4dvNV"); - glVertexAttribs4ubvNV = (glVertexAttribs4ubvNVPROC) extgl_GetProcAddress("glVertexAttribs4ubvNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_vertex_program) -} - -static void extgl_InitEXTVertexWeighting(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_vertex_weighting) - return; - glVertexWeightfEXT = (glVertexWeightfEXTPROC) extgl_GetProcAddress("glVertexWeightfEXT"); - glVertexWeightfvEXT = (glVertexWeightfvEXTPROC) extgl_GetProcAddress("glVertexWeightfvEXT"); - glVertexWeightPointerEXT = (glVertexWeightPointerEXTPROC) extgl_GetProcAddress("glVertexWeightPointerEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_vertex_weighting) -} - -static void extgl_InitARBMultisample(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_multisample) - return; - glSampleCoverageARB = (glSampleCoverageARBPROC) extgl_GetProcAddress("glSampleCoverageARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_multisample) -} - -static void extgl_InitNVRegisterCombiners(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_register_combiners) - return; - glCombinerParameterfvNV = (glCombinerParameterfvNVPROC) extgl_GetProcAddress("glCombinerParameterfvNV"); - glCombinerParameterfNV = (glCombinerParameterfNVPROC) extgl_GetProcAddress("glCombinerParameterfNV"); - glCombinerParameterivNV = (glCombinerParameterivNVPROC) extgl_GetProcAddress("glCombinerParameterivNV"); - glCombinerParameteriNV = (glCombinerParameteriNVPROC) extgl_GetProcAddress("glCombinerParameteriNV"); - glCombinerInputNV = (glCombinerInputNVPROC) extgl_GetProcAddress("glCombinerInputNV"); - glCombinerOutputNV = (glCombinerOutputNVPROC) extgl_GetProcAddress("glCombinerOutputNV"); - glFinalCombinerInputNV = (glFinalCombinerInputNVPROC) extgl_GetProcAddress("glFinalCombinerInputNV"); - glGetCombinerInputParameterfvNV = (glGetCombinerInputParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerInputParameterfvNV"); - glGetCombinerInputParameterivNV = (glGetCombinerInputParameterivNVPROC) extgl_GetProcAddress("glGetCombinerInputParameterivNV"); - glGetCombinerOutputParameterfvNV = (glGetCombinerOutputParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerOutputParameterfvNV"); - glGetCombinerOutputParameterivNV = (glGetCombinerOutputParameterivNVPROC) extgl_GetProcAddress("glGetCombinerOutputParameterivNV"); - glGetFinalCombinerInputParameterfvNV = (glGetFinalCombinerInputParameterfvNVPROC) extgl_GetProcAddress("glGetFinalCombinerInputParameterfvNV"); - glGetFinalCombinerInputParameterivNV = (glGetFinalCombinerInputParameterivNVPROC) extgl_GetProcAddress("glGetFinalCombinerInputParameterivNV"); - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_register_combiners) -} - -static void extgl_InitEXTPointParameters(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_point_parameters) - return; - glPointParameterfEXT = (glPointParameterfEXTPROC) extgl_GetProcAddress("glPointParameterfEXT"); - glPointParameterfvEXT = (glPointParameterfvEXTPROC) extgl_GetProcAddress("glPointParameterfvEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_point_parameters) -} - -static void extgl_InitNVVertexArrayRange(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_NV_vertex_array_range) - return; - glFlushVertexArrayRangeNV = (glFlushVertexArrayRangeNVPROC) extgl_GetProcAddress("glFlushVertexArrayRangeNV"); - glVertexArrayRangeNV = (glVertexArrayRangeNVPROC) extgl_GetProcAddress("glVertexArrayRangeNV"); -#ifdef _WIN32 - wglAllocateMemoryNV = (wglAllocateMemoryNVPROC) extgl_GetProcAddress("wglAllocateMemoryNV"); - wglFreeMemoryNV = (wglFreeMemoryNVPROC) extgl_GetProcAddress("wglFreeMemoryNV"); -#endif /* WIN32 */ -#ifdef _X11 - glXAllocateMemoryNV = (glXAllocateMemoryNVPROC) extgl_GetProcAddress("glXAllocateMemoryNV"); - glXFreeMemoryNV = (glXFreeMemoryNVPROC) extgl_GetProcAddress("glXFreeMemoryNV"); -#endif /* X11 */ - EXTGL_SANITY_CHECK(env, ext_set, GL_NV_vertex_array_range) -} - -static void extgl_InitEXTFogCoord(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_fog_coord) - return; - glFogCoordfEXT = (glFogCoordfEXTPROC) extgl_GetProcAddress("glFogCoordfEXT"); - glFogCoordfvEXT = (glFogCoordfvEXTPROC) extgl_GetProcAddress("glFogCoordfvEXT"); - glFogCoorddEXT = (glFogCoorddEXTPROC) extgl_GetProcAddress("glFogCoorddEXT"); - glFogCoorddvEXT = (glFogCoorddvEXTPROC) extgl_GetProcAddress("glFogCoorddvEXT"); - glFogCoordPointerEXT = (glFogCoordPointerEXTPROC) extgl_GetProcAddress("glFogCoordPointerEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_fog_coord) -} - -static void extgl_InitEXTSecondaryColor(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_secondary_color) - return; - glSecondaryColor3bEXT = (glSecondaryColor3bEXTPROC) extgl_GetProcAddress("glSecondaryColor3bEXT"); - glSecondaryColor3bvEXT = (glSecondaryColor3bvEXTPROC) extgl_GetProcAddress("glSecondaryColor3bvEXT"); - glSecondaryColor3dEXT = (glSecondaryColor3dEXTPROC) extgl_GetProcAddress("glSecondaryColor3dEXT"); - glSecondaryColor3dvEXT = (glSecondaryColor3dvEXTPROC) extgl_GetProcAddress("glSecondaryColor3dvEXT"); - glSecondaryColor3fEXT = (glSecondaryColor3fEXTPROC) extgl_GetProcAddress("glSecondaryColor3fEXT"); - glSecondaryColor3fvEXT = (glSecondaryColor3fvEXTPROC) extgl_GetProcAddress("glSecondaryColor3fvEXT"); - glSecondaryColor3iEXT = (glSecondaryColor3iEXTPROC) extgl_GetProcAddress("glSecondaryColor3iEXT"); - glSecondaryColor3ivEXT = (glSecondaryColor3ivEXTPROC) extgl_GetProcAddress("glSecondaryColor3ivEXT"); - glSecondaryColor3sEXT = (glSecondaryColor3sEXTPROC) extgl_GetProcAddress("glSecondaryColor3sEXT"); - glSecondaryColor3svEXT = (glSecondaryColor3svEXTPROC) extgl_GetProcAddress("glSecondaryColor3svEXT"); - glSecondaryColor3ubEXT = (glSecondaryColor3ubEXTPROC) extgl_GetProcAddress("glSecondaryColor3ubEXT"); - glSecondaryColor3ubvEXT = (glSecondaryColor3ubvEXTPROC) extgl_GetProcAddress("glSecondaryColor3ubvEXT"); - glSecondaryColor3uiEXT = (glSecondaryColor3uiEXTPROC) extgl_GetProcAddress("glSecondaryColor3uiEXT"); - glSecondaryColor3uivEXT = (glSecondaryColor3uivEXTPROC) extgl_GetProcAddress("glSecondaryColor3uivEXT"); - glSecondaryColor3usEXT = (glSecondaryColor3usEXTPROC) extgl_GetProcAddress("glSecondaryColor3usEXT"); - glSecondaryColor3usvEXT = (glSecondaryColor3usvEXTPROC) extgl_GetProcAddress("glSecondaryColor3usvEXT"); - glSecondaryColorPointerEXT = (glSecondaryColorPointerEXTPROC) extgl_GetProcAddress("glSecondaryColorPointerEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_secondary_color) -} - -static void extgl_InitEXTCompiledVertexArray(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_compiled_vertex_array) - return; - glLockArraysEXT = (glLockArraysEXTPROC) extgl_GetProcAddress("glLockArraysEXT"); - glUnlockArraysEXT = (glUnlockArraysEXTPROC) extgl_GetProcAddress("glUnlockArraysEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_compiled_vertex_array) -} - -static void extgl_InitARBTransposeMatrix(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_transpose_matrix) - return; - glLoadTransposeMatrixfARB = (glLoadTransposeMatrixfARBPROC) extgl_GetProcAddress("glLoadTransposeMatrixfARB"); - glLoadTransposeMatrixdARB = (glLoadTransposeMatrixdARBPROC) extgl_GetProcAddress("glLoadTransposeMatrixdARB"); - glMultTransposeMatrixfARB = (glMultTransposeMatrixfARBPROC) extgl_GetProcAddress("glMultTransposeMatrixfARB"); - glMultTransposeMatrixdARB = (glMultTransposeMatrixdARBPROC) extgl_GetProcAddress("glMultTransposeMatrixdARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_transpose_matrix) -} - -static void extgl_InitEXTDrawRangeElements(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_EXT_draw_range_elements) - return; - glDrawRangeElementsEXT = (glDrawRangeElementsEXTPROC) extgl_GetProcAddress("glDrawRangeElementsEXT"); - EXTGL_SANITY_CHECK(env, ext_set, GL_EXT_draw_range_elements) -} - -static void extgl_InitARBMultitexture(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_multitexture) - return; - glActiveTextureARB = (glActiveTextureARBPROC) extgl_GetProcAddress("glActiveTextureARB"); - glClientActiveTextureARB = (glClientActiveTextureARBPROC) extgl_GetProcAddress("glClientActiveTextureARB"); - - glMultiTexCoord1dARB = (glMultiTexCoord1dARBPROC) extgl_GetProcAddress("glMultiTexCoord1dARB"); - glMultiTexCoord1dvARB = (glMultiTexCoord1dvARBPROC) extgl_GetProcAddress("glMultiTexCoord1dvARB"); - glMultiTexCoord1fARB = (glMultiTexCoord1fARBPROC) extgl_GetProcAddress("glMultiTexCoord1fARB"); - glMultiTexCoord1fvARB = (glMultiTexCoord1fvARBPROC) extgl_GetProcAddress("glMultiTexCoord1fvARB"); - glMultiTexCoord1iARB = (glMultiTexCoord1iARBPROC) extgl_GetProcAddress("glMultiTexCoord1iARB"); - glMultiTexCoord1ivARB = (glMultiTexCoord1ivARBPROC) extgl_GetProcAddress("glMultiTexCoord1ivARB"); - glMultiTexCoord1sARB = (glMultiTexCoord1sARBPROC) extgl_GetProcAddress("glMultiTexCoord1sARB"); - glMultiTexCoord1svARB = (glMultiTexCoord1svARBPROC) extgl_GetProcAddress("glMultiTexCoord1svARB"); - - glMultiTexCoord2dARB = (glMultiTexCoord2dARBPROC) extgl_GetProcAddress("glMultiTexCoord2dARB"); - glMultiTexCoord2dvARB = (glMultiTexCoord2dvARBPROC) extgl_GetProcAddress("glMultiTexCoord2dvARB"); - glMultiTexCoord2fARB = (glMultiTexCoord2fARBPROC) extgl_GetProcAddress("glMultiTexCoord2fARB"); - glMultiTexCoord2fvARB = (glMultiTexCoord2fvARBPROC) extgl_GetProcAddress("glMultiTexCoord2fvARB"); - glMultiTexCoord2iARB = (glMultiTexCoord2iARBPROC) extgl_GetProcAddress("glMultiTexCoord2iARB"); - glMultiTexCoord2ivARB = (glMultiTexCoord2ivARBPROC) extgl_GetProcAddress("glMultiTexCoord2ivARB"); - glMultiTexCoord2sARB = (glMultiTexCoord2sARBPROC) extgl_GetProcAddress("glMultiTexCoord2sARB"); - glMultiTexCoord2svARB = (glMultiTexCoord2svARBPROC) extgl_GetProcAddress("glMultiTexCoord2svARB"); - - glMultiTexCoord3dARB = (glMultiTexCoord3dARBPROC) extgl_GetProcAddress("glMultiTexCoord3dARB"); - glMultiTexCoord3dvARB = (glMultiTexCoord3dvARBPROC) extgl_GetProcAddress("glMultiTexCoord3dvARB"); - glMultiTexCoord3fARB = (glMultiTexCoord3fARBPROC) extgl_GetProcAddress("glMultiTexCoord3fARB"); - glMultiTexCoord3fvARB = (glMultiTexCoord3fvARBPROC) extgl_GetProcAddress("glMultiTexCoord3fvARB"); - glMultiTexCoord3iARB = (glMultiTexCoord3iARBPROC) extgl_GetProcAddress("glMultiTexCoord3iARB"); - glMultiTexCoord3ivARB = (glMultiTexCoord3ivARBPROC) extgl_GetProcAddress("glMultiTexCoord3ivARB"); - glMultiTexCoord3sARB = (glMultiTexCoord3sARBPROC) extgl_GetProcAddress("glMultiTexCoord3sARB"); - glMultiTexCoord3svARB = (glMultiTexCoord3svARBPROC) extgl_GetProcAddress("glMultiTexCoord3svARB"); - - glMultiTexCoord4dARB = (glMultiTexCoord4dARBPROC) extgl_GetProcAddress("glMultiTexCoord4dARB"); - glMultiTexCoord4dvARB = (glMultiTexCoord4dvARBPROC) extgl_GetProcAddress("glMultiTexCoord4dvARB"); - glMultiTexCoord4fARB = (glMultiTexCoord4fARBPROC) extgl_GetProcAddress("glMultiTexCoord4fARB"); - glMultiTexCoord4fvARB = (glMultiTexCoord4fvARBPROC) extgl_GetProcAddress("glMultiTexCoord4fvARB"); - glMultiTexCoord4iARB = (glMultiTexCoord4iARBPROC) extgl_GetProcAddress("glMultiTexCoord4iARB"); - glMultiTexCoord4ivARB = (glMultiTexCoord4ivARBPROC) extgl_GetProcAddress("glMultiTexCoord4ivARB"); - glMultiTexCoord4sARB = (glMultiTexCoord4sARBPROC) extgl_GetProcAddress("glMultiTexCoord4sARB"); - glMultiTexCoord4svARB = (glMultiTexCoord4svARBPROC) extgl_GetProcAddress("glMultiTexCoord4svARB"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_multitexture) -} +*/ static void extgl_InitGLU12(void) { @@ -2539,14 +1165,14 @@ static void extgl_InitGLU13(JNIEnv *env, jobject ext_set) EXTGL_SANITY_CHECK(env, ext_set, GLU13) } -static void extgl_InitEXTNurbsTesselator(JNIEnv *env, jobject ext_set) +/*static void extgl_InitEXTNurbsTesselator(JNIEnv *env, jobject ext_set) { if (!extgl_Extensions.GLU_EXT_nurbs_tessellator) return; gluNurbsCallbackDataEXT = (gluNurbsCallbackDataEXTPROC) extgl_GetProcAddress("gluNurbsCallbackDataEXT"); EXTGL_SANITY_CHECK(env, ext_set, GLU_EXT_nurbs_tessellator) } - +*/ #ifdef _X11 static void extgl_InitGLX13(JNIEnv *env, jobject ext_set) { @@ -2634,510 +1260,6 @@ bool extgl_InitGLX(JNIEnv *env, jobject ext_set, Display *disp, int screen) } #endif -static void extgl_InitOpenGL1_1(void) -{ - glAccum = (glAccumPROC) extgl_GetProcAddress("glAccum"); - glAlphaFunc = (glAlphaFuncPROC) extgl_GetProcAddress("glAlphaFunc"); - glAreTexturesResident = (glAreTexturesResidentPROC) extgl_GetProcAddress("glAreTexturesResident"); - glArrayElement = (glArrayElementPROC) extgl_GetProcAddress("glArrayElement"); - glBegin = (glBeginPROC) extgl_GetProcAddress("glBegin"); - glBindTexture = (glBindTexturePROC) extgl_GetProcAddress("glBindTexture"); - glBitmap = (glBitmapPROC) extgl_GetProcAddress("glBitmap"); - glBlendFunc = (glBlendFuncPROC) extgl_GetProcAddress("glBlendFunc"); - glCallList = (glCallListPROC) extgl_GetProcAddress("glCallList"); - glCallLists = (glCallListsPROC) extgl_GetProcAddress("glCallLists"); - glClear = (glClearPROC) extgl_GetProcAddress("glClear"); - glClearAccum = (glClearAccumPROC) extgl_GetProcAddress("glClearAccum"); - glClearColor = (glClearColorPROC) extgl_GetProcAddress("glClearColor"); - glClearDepth = (glClearDepthPROC) extgl_GetProcAddress("glClearDepth"); - glClearIndex = (glClearIndexPROC) extgl_GetProcAddress("glClearIndex"); - glClearStencil = (glClearStencilPROC) extgl_GetProcAddress("glClearStencil"); - glClipPlane = (glClipPlanePROC) extgl_GetProcAddress("glClipPlane"); - glColor3b = (glColor3bPROC) extgl_GetProcAddress("glColor3b"); - glColor3bv = (glColor3bvPROC) extgl_GetProcAddress("glColor3bv"); - glColor3d = (glColor3dPROC) extgl_GetProcAddress("glColor3d"); - glColor3dv = (glColor3dvPROC) extgl_GetProcAddress("glColor3dv"); - glColor3f = (glColor3fPROC) extgl_GetProcAddress("glColor3f"); - glColor3fv = (glColor3fvPROC) extgl_GetProcAddress("glColor3fv"); - glColor3i = (glColor3iPROC) extgl_GetProcAddress("glColor3i"); - glColor3iv = (glColor3ivPROC) extgl_GetProcAddress("glColor3iv"); - glColor3s = (glColor3sPROC) extgl_GetProcAddress("glColor3s"); - glColor3sv = (glColor3svPROC) extgl_GetProcAddress("glColor3sv"); - glColor3ub = (glColor3ubPROC) extgl_GetProcAddress("glColor3ub"); - glColor3ubv = (glColor3ubvPROC) extgl_GetProcAddress("glColor3ubv"); - glColor3ui = (glColor3uiPROC) extgl_GetProcAddress("glColor3ui"); - glColor3uiv = (glColor3uivPROC) extgl_GetProcAddress("glColor3uiv"); - glColor3us = (glColor3usPROC) extgl_GetProcAddress("glColor3us"); - glColor3usv = (glColor3usvPROC) extgl_GetProcAddress("glColor3usv"); - glColor4b = (glColor4bPROC) extgl_GetProcAddress("glColor4b"); - glColor4bv = (glColor4bvPROC) extgl_GetProcAddress("glColor4bv"); - glColor4d = (glColor4dPROC) extgl_GetProcAddress("glColor4d"); - glColor4dv = (glColor4dvPROC) extgl_GetProcAddress("glColor4dv"); - glColor4f = (glColor4fPROC) extgl_GetProcAddress("glColor4f"); - glColor4fv = (glColor4fvPROC) extgl_GetProcAddress("glColor4fv"); - glColor4i = (glColor4iPROC) extgl_GetProcAddress("glColor4i"); - glColor4iv = (glColor4ivPROC) extgl_GetProcAddress("glColor4iv"); - glColor4s = (glColor4sPROC) extgl_GetProcAddress("glColor4s"); - glColor4sv = (glColor4svPROC) extgl_GetProcAddress("glColor4sv"); - glColor4ub = (glColor4ubPROC) extgl_GetProcAddress("glColor4ub"); - glColor4ubv = (glColor4ubvPROC) extgl_GetProcAddress("glColor4ubv"); - glColor4ui = (glColor4uiPROC) extgl_GetProcAddress("glColor4ui"); - glColor4uiv = (glColor4uivPROC) extgl_GetProcAddress("glColor4uiv"); - glColor4us = (glColor4usPROC) extgl_GetProcAddress("glColor4us"); - glColor4usv = (glColor4usvPROC) extgl_GetProcAddress("glColor4usv"); - glColorMask = (glColorMaskPROC) extgl_GetProcAddress("glColorMask"); - glColorMaterial = (glColorMaterialPROC) extgl_GetProcAddress("glColorMaterial"); - glColorPointer = (glColorPointerPROC) extgl_GetProcAddress("glColorPointer"); - glCopyPixels = (glCopyPixelsPROC) extgl_GetProcAddress("glCopyPixels"); - glCopyTexImage1D = (glCopyTexImage1DPROC) extgl_GetProcAddress("glCopyTexImage1D"); - glCopyTexImage2D = (glCopyTexImage2DPROC) extgl_GetProcAddress("glCopyTexImage2D"); - glCopyTexSubImage1D = (glCopyTexSubImage1DPROC) extgl_GetProcAddress("glCopyTexSubImage1D"); - glCopyTexSubImage2D = (glCopyTexSubImage2DPROC) extgl_GetProcAddress("glCopyTexSubImage2D"); - glCullFace = (glCullFacePROC) extgl_GetProcAddress("glCullFace"); - glDeleteLists = (glDeleteListsPROC) extgl_GetProcAddress("glDeleteLists"); - glDeleteTextures = (glDeleteTexturesPROC) extgl_GetProcAddress("glDeleteTextures"); - glDepthFunc = (glDepthFuncPROC) extgl_GetProcAddress("glDepthFunc"); - glDepthMask = (glDepthMaskPROC) extgl_GetProcAddress("glDepthMask"); - glDepthRange = (glDepthRangePROC) extgl_GetProcAddress("glDepthRange"); - glDisable = (glDisablePROC) extgl_GetProcAddress("glDisable"); - glDisableClientState = (glDisableClientStatePROC) extgl_GetProcAddress("glDisableClientState"); - glDrawArrays = (glDrawArraysPROC) extgl_GetProcAddress("glDrawArrays"); - glDrawBuffer = (glDrawBufferPROC) extgl_GetProcAddress("glDrawBuffer"); - glDrawElements = (glDrawElementsPROC) extgl_GetProcAddress("glDrawElements"); - glDrawPixels = (glDrawPixelsPROC) extgl_GetProcAddress("glDrawPixels"); - glEdgeFlag = (glEdgeFlagPROC) extgl_GetProcAddress("glEdgeFlag"); - glEdgeFlagPointer = (glEdgeFlagPointerPROC) extgl_GetProcAddress("glEdgeFlagPointer"); - glEdgeFlagv = (glEdgeFlagvPROC) extgl_GetProcAddress("glEdgeFlagv"); - glEnable = (glEnablePROC) extgl_GetProcAddress("glEnable"); - glEnableClientState = (glEnableClientStatePROC) extgl_GetProcAddress("glEnableClientState"); - glEnd = (glEndPROC) extgl_GetProcAddress("glEnd"); - glEndList = (glEndListPROC) extgl_GetProcAddress("glEndList"); - glEvalCoord1d = (glEvalCoord1dPROC) extgl_GetProcAddress("glEvalCoord1d"); - glEvalCoord1dv = (glEvalCoord1dvPROC) extgl_GetProcAddress("glEvalCoord1dv"); - glEvalCoord1f = (glEvalCoord1fPROC) extgl_GetProcAddress("glEvalCoord1f"); - glEvalCoord1fv = (glEvalCoord1fvPROC) extgl_GetProcAddress("glEvalCoord1fv"); - glEvalCoord2d = (glEvalCoord2dPROC) extgl_GetProcAddress("glEvalCoord2d"); - glEvalCoord2dv = (glEvalCoord2dvPROC) extgl_GetProcAddress("glEvalCoord2dv"); - glEvalCoord2f = (glEvalCoord2fPROC) extgl_GetProcAddress("glEvalCoord2f"); - glEvalCoord2fv = (glEvalCoord2fvPROC) extgl_GetProcAddress("glEvalCoord2fv"); - glEvalMesh1 = (glEvalMesh1PROC) extgl_GetProcAddress("glEvalMesh1"); - glEvalMesh2 = (glEvalMesh2PROC) extgl_GetProcAddress("glEvalMesh2"); - glEvalPoint1 = (glEvalPoint1PROC) extgl_GetProcAddress("glEvalPoint1"); - glEvalPoint2 = (glEvalPoint2PROC) extgl_GetProcAddress("glEvalPoint2"); - glFeedbackBuffer = (glFeedbackBufferPROC) extgl_GetProcAddress("glFeedbackBuffer"); - glFinish = (glFinishPROC) extgl_GetProcAddress("glFinish"); - glFlush = (glFlushPROC) extgl_GetProcAddress("glFlush"); - glFogf = (glFogfPROC) extgl_GetProcAddress("glFogf"); - glFogfv = (glFogfvPROC) extgl_GetProcAddress("glFogfv"); - glFogi = (glFogiPROC) extgl_GetProcAddress("glFogi"); - glFogiv = (glFogivPROC) extgl_GetProcAddress("glFogiv"); - glFrontFace = (glFrontFacePROC) extgl_GetProcAddress("glFrontFace"); - glFrustum = (glFrustumPROC) extgl_GetProcAddress("glFrustum"); - glGenLists = (glGenListsPROC) extgl_GetProcAddress("glGenLists"); - glGenTextures = (glGenTexturesPROC) extgl_GetProcAddress("glGenTextures"); - glGetBooleanv = (glGetBooleanvPROC) extgl_GetProcAddress("glGetBooleanv"); - glGetClipPlane = (glGetClipPlanePROC) extgl_GetProcAddress("glGetClipPlane"); - glGetDoublev = (glGetDoublevPROC) extgl_GetProcAddress("glGetDoublev"); - glGetError = (glGetErrorPROC) extgl_GetProcAddress("glGetError"); - glGetFloatv = (glGetFloatvPROC) extgl_GetProcAddress("glGetFloatv"); - glGetIntegerv = (glGetIntegervPROC) extgl_GetProcAddress("glGetIntegerv"); - glGetLightfv = (glGetLightfvPROC) extgl_GetProcAddress("glGetLightfv"); - glGetLightiv = (glGetLightivPROC) extgl_GetProcAddress("glGetLightiv"); - glGetMapdv = (glGetMapdvPROC) extgl_GetProcAddress("glGetMapdv"); - glGetMapfv = (glGetMapfvPROC) extgl_GetProcAddress("glGetMapfv"); - glGetMapiv = (glGetMapivPROC) extgl_GetProcAddress("glGetMapiv"); - glGetMaterialfv = (glGetMaterialfvPROC) extgl_GetProcAddress("glGetMaterialfv"); - glGetMaterialiv = (glGetMaterialivPROC) extgl_GetProcAddress("glGetMaterialiv"); - glGetPixelMapfv = (glGetPixelMapfvPROC) extgl_GetProcAddress("glGetPixelMapfv"); - glGetPixelMapuiv = (glGetPixelMapuivPROC) extgl_GetProcAddress("glGetPixelMapuiv"); - glGetPixelMapusv = (glGetPixelMapusvPROC) extgl_GetProcAddress("glGetPixelMapusv"); - glGetPointerv = (glGetPointervPROC) extgl_GetProcAddress("glGetPointerv"); - glGetPolygonStipple = (glGetPolygonStipplePROC) extgl_GetProcAddress("glGetPolygonStipple"); - glGetString = (glGetStringPROC) extgl_GetProcAddress("glGetString"); - glGetTexEnvfv = (glGetTexEnvfvPROC) extgl_GetProcAddress("glGetTexEnvfv"); - glGetTexEnviv = (glGetTexEnvivPROC) extgl_GetProcAddress("glGetTexEnviv"); - glGetTexGendv = (glGetTexGendvPROC) extgl_GetProcAddress("glGetTexGendv"); - glGetTexGenfv = (glGetTexGenfvPROC) extgl_GetProcAddress("glGetTexGenfv"); - glGetTexGeniv = (glGetTexGenivPROC) extgl_GetProcAddress("glGetTexGeniv"); - glGetTexImage = (glGetTexImagePROC) extgl_GetProcAddress("glGetTexImage"); - glGetTexLevelParameterfv = (glGetTexLevelParameterfvPROC) extgl_GetProcAddress("glGetTexLevelParameterfv"); - glGetTexLevelParameteriv = (glGetTexLevelParameterivPROC) extgl_GetProcAddress("glGetTexLevelParameteriv"); - glGetTexParameterfv = (glGetTexParameterfvPROC) extgl_GetProcAddress("glGetTexParameterfv"); - glGetTexParameteriv = (glGetTexParameterivPROC) extgl_GetProcAddress("glGetTexParameteriv"); - glHint = (glHintPROC) extgl_GetProcAddress("glHint"); - glIndexMask = (glIndexMaskPROC) extgl_GetProcAddress("glIndexMask"); - glIndexPointer = (glIndexPointerPROC) extgl_GetProcAddress("glIndexPointer"); - glIndexd = (glIndexdPROC) extgl_GetProcAddress("glIndexd"); - glIndexdv = (glIndexdvPROC) extgl_GetProcAddress("glIndexdv"); - glIndexf = (glIndexfPROC) extgl_GetProcAddress("glIndexf"); - glIndexfv = (glIndexfvPROC) extgl_GetProcAddress("glIndexfv"); - glIndexi = (glIndexiPROC) extgl_GetProcAddress("glIndexi"); - glIndexiv = (glIndexivPROC) extgl_GetProcAddress("glIndexiv"); - glIndexs = (glIndexsPROC) extgl_GetProcAddress("glIndexs"); - glIndexsv = (glIndexsvPROC) extgl_GetProcAddress("glIndexsv"); - glIndexub = (glIndexubPROC) extgl_GetProcAddress("glIndexub"); - glIndexubv = (glIndexubvPROC) extgl_GetProcAddress("glIndexubv"); - glInitNames = (glInitNamesPROC) extgl_GetProcAddress("glInitNames"); - glInterleavedArrays = (glInterleavedArraysPROC) extgl_GetProcAddress("glInterleavedArrays"); - glIsEnabled = (glIsEnabledPROC) extgl_GetProcAddress("glIsEnabled"); - glIsList = (glIsListPROC) extgl_GetProcAddress("glIsList"); - glIsTexture = (glIsTexturePROC) extgl_GetProcAddress("glIsTexture"); - glLightModelf = (glLightModelfPROC) extgl_GetProcAddress("glLightModelf"); - glLightModelfv = (glLightModelfvPROC) extgl_GetProcAddress("glLightModelfv"); - glLightModeli = (glLightModeliPROC) extgl_GetProcAddress("glLightModeli"); - glLightModeliv = (glLightModelivPROC) extgl_GetProcAddress("glLightModeliv"); - glLightf = (glLightfPROC) extgl_GetProcAddress("glLightf"); - glLightfv = (glLightfvPROC) extgl_GetProcAddress("glLightfv"); - glLighti = (glLightiPROC) extgl_GetProcAddress("glLighti"); - glLightiv = (glLightivPROC) extgl_GetProcAddress("glLightiv"); - glLineStipple = (glLineStipplePROC) extgl_GetProcAddress("glLineStipple"); - glLineWidth = (glLineWidthPROC) extgl_GetProcAddress("glLineWidth"); - glListBase = (glListBasePROC) extgl_GetProcAddress("glListBase"); - glLoadIdentity = (glLoadIdentityPROC) extgl_GetProcAddress("glLoadIdentity"); - glLoadMatrixd = (glLoadMatrixdPROC) extgl_GetProcAddress("glLoadMatrixd"); - glLoadMatrixf = (glLoadMatrixfPROC) extgl_GetProcAddress("glLoadMatrixf"); - glLoadName = (glLoadNamePROC) extgl_GetProcAddress("glLoadName"); - glLogicOp = (glLogicOpPROC) extgl_GetProcAddress("glLogicOp"); - glMap1d = (glMap1dPROC) extgl_GetProcAddress("glMap1d"); - glMap1f = (glMap1fPROC) extgl_GetProcAddress("glMap1f"); - glMap2d = (glMap2dPROC) extgl_GetProcAddress("glMap2d"); - glMap2f = (glMap2fPROC) extgl_GetProcAddress("glMap2f"); - glMapGrid1d = (glMapGrid1dPROC) extgl_GetProcAddress("glMapGrid1d"); - glMapGrid1f = (glMapGrid1fPROC) extgl_GetProcAddress("glMapGrid1f"); - glMapGrid2d = (glMapGrid2dPROC) extgl_GetProcAddress("glMapGrid2d"); - glMapGrid2f = (glMapGrid2fPROC) extgl_GetProcAddress("glMapGrid2f"); - glMaterialf = (glMaterialfPROC) extgl_GetProcAddress("glMaterialf"); - glMaterialfv = (glMaterialfvPROC) extgl_GetProcAddress("glMaterialfv"); - glMateriali = (glMaterialiPROC) extgl_GetProcAddress("glMateriali"); - glMaterialiv = (glMaterialivPROC) extgl_GetProcAddress("glMaterialiv"); - glMatrixMode = (glMatrixModePROC) extgl_GetProcAddress("glMatrixMode"); - glMultMatrixd = (glMultMatrixdPROC) extgl_GetProcAddress("glMultMatrixd"); - glMultMatrixf = (glMultMatrixfPROC) extgl_GetProcAddress("glMultMatrixf"); - glNewList = (glNewListPROC) extgl_GetProcAddress("glNewList"); - glNormal3b = (glNormal3bPROC) extgl_GetProcAddress("glNormal3b"); - glNormal3bv = (glNormal3bvPROC) extgl_GetProcAddress("glNormal3bv"); - glNormal3d = (glNormal3dPROC) extgl_GetProcAddress("glNormal3d"); - glNormal3dv = (glNormal3dvPROC) extgl_GetProcAddress("glNormal3dv"); - glNormal3f = (glNormal3fPROC) extgl_GetProcAddress("glNormal3f"); - glNormal3fv = (glNormal3fvPROC) extgl_GetProcAddress("glNormal3fv"); - glNormal3i = (glNormal3iPROC) extgl_GetProcAddress("glNormal3i"); - glNormal3iv = (glNormal3ivPROC) extgl_GetProcAddress("glNormal3iv"); - glNormal3s = (glNormal3sPROC) extgl_GetProcAddress("glNormal3s"); - glNormal3sv = (glNormal3svPROC) extgl_GetProcAddress("glNormal3sv"); - glNormalPointer = (glNormalPointerPROC) extgl_GetProcAddress("glNormalPointer"); - glOrtho = (glOrthoPROC) extgl_GetProcAddress("glOrtho"); - glPassThrough = (glPassThroughPROC) extgl_GetProcAddress("glPassThrough"); - glPixelMapfv = (glPixelMapfvPROC) extgl_GetProcAddress("glPixelMapfv"); - glPixelMapuiv = (glPixelMapuivPROC) extgl_GetProcAddress("glPixelMapuiv"); - glPixelMapusv = (glPixelMapusvPROC) extgl_GetProcAddress("glPixelMapusv"); - glPixelStoref = (glPixelStorefPROC) extgl_GetProcAddress("glPixelStoref"); - glPixelStorei = (glPixelStoreiPROC) extgl_GetProcAddress("glPixelStorei"); - glPixelTransferf = (glPixelTransferfPROC) extgl_GetProcAddress("glPixelTransferf"); - glPixelTransferi = (glPixelTransferiPROC) extgl_GetProcAddress("glPixelTransferi"); - glPixelZoom = (glPixelZoomPROC) extgl_GetProcAddress("glPixelZoom"); - glPointSize = (glPointSizePROC) extgl_GetProcAddress("glPointSize"); - glPolygonMode = (glPolygonModePROC) extgl_GetProcAddress("glPolygonMode"); - glPolygonOffset = (glPolygonOffsetPROC) extgl_GetProcAddress("glPolygonOffset"); - glPolygonStipple = (glPolygonStipplePROC) extgl_GetProcAddress("glPolygonStipple"); - glPopAttrib = (glPopAttribPROC) extgl_GetProcAddress("glPopAttrib"); - glPopClientAttrib = (glPopClientAttribPROC) extgl_GetProcAddress("glPopClientAttrib"); - glPopMatrix = (glPopMatrixPROC) extgl_GetProcAddress("glPopMatrix"); - glPopName = (glPopNamePROC) extgl_GetProcAddress("glPopName"); - glPrioritizeTextures = (glPrioritizeTexturesPROC) extgl_GetProcAddress("glPrioritizeTextures"); - glPushAttrib = (glPushAttribPROC) extgl_GetProcAddress("glPushAttrib"); - glPushClientAttrib = (glPushClientAttribPROC) extgl_GetProcAddress("glPushClientAttrib"); - glPushMatrix = (glPushMatrixPROC) extgl_GetProcAddress("glPushMatrix"); - glPushName = (glPushNamePROC) extgl_GetProcAddress("glPushName"); - glRasterPos2d = (glRasterPos2dPROC) extgl_GetProcAddress("glRasterPos2d"); - glRasterPos2dv = (glRasterPos2dvPROC) extgl_GetProcAddress("glRasterPos2dv"); - glRasterPos2f = (glRasterPos2fPROC) extgl_GetProcAddress("glRasterPos2f"); - glRasterPos2fv = (glRasterPos2fvPROC) extgl_GetProcAddress("glRasterPos2fv"); - glRasterPos2i = (glRasterPos2iPROC) extgl_GetProcAddress("glRasterPos2i"); - glRasterPos2iv = (glRasterPos2ivPROC) extgl_GetProcAddress("glRasterPos2iv"); - glRasterPos2s = (glRasterPos2sPROC) extgl_GetProcAddress("glRasterPos2s"); - glRasterPos2sv = (glRasterPos2svPROC) extgl_GetProcAddress("glRasterPos2sv"); - glRasterPos3d = (glRasterPos3dPROC) extgl_GetProcAddress("glRasterPos3d"); - glRasterPos3dv = (glRasterPos3dvPROC) extgl_GetProcAddress("glRasterPos3dv"); - glRasterPos3f = (glRasterPos3fPROC) extgl_GetProcAddress("glRasterPos3f"); - glRasterPos3fv = (glRasterPos3fvPROC) extgl_GetProcAddress("glRasterPos3fv"); - glRasterPos3i = (glRasterPos3iPROC) extgl_GetProcAddress("glRasterPos3i"); - - glRasterPos3iv = (glRasterPos3ivPROC) extgl_GetProcAddress("glRasterPos3iv"); - glRasterPos3s = (glRasterPos3sPROC) extgl_GetProcAddress("glRasterPos3s"); - glRasterPos3sv = (glRasterPos3svPROC) extgl_GetProcAddress("glRasterPos3sv"); - glRasterPos4d = (glRasterPos4dPROC) extgl_GetProcAddress("glRasterPos4d"); - glRasterPos4dv = (glRasterPos4dvPROC) extgl_GetProcAddress("glRasterPos4dv"); - glRasterPos4f = (glRasterPos4fPROC) extgl_GetProcAddress("glRasterPos4f"); - glRasterPos4fv = (glRasterPos4fvPROC) extgl_GetProcAddress("glRasterPos4fv"); - glRasterPos4i = (glRasterPos4iPROC) extgl_GetProcAddress("glRasterPos4i"); - glRasterPos4iv = (glRasterPos4ivPROC) extgl_GetProcAddress("glRasterPos4iv"); - glRasterPos4s = (glRasterPos4sPROC) extgl_GetProcAddress("glRasterPos4s"); - glRasterPos4sv = (glRasterPos4svPROC) extgl_GetProcAddress("glRasterPos4sv"); - glReadBuffer = (glReadBufferPROC) extgl_GetProcAddress("glReadBuffer"); - glReadPixels = (glReadPixelsPROC) extgl_GetProcAddress("glReadPixels"); - glRectd = (glRectdPROC) extgl_GetProcAddress("glRectd"); - glRectdv = (glRectdvPROC) extgl_GetProcAddress("glRectdv"); - glRectf = (glRectfPROC) extgl_GetProcAddress("glRectf"); - glRectfv = (glRectfvPROC) extgl_GetProcAddress("glRectfv"); - glRecti = (glRectiPROC) extgl_GetProcAddress("glRecti"); - glRectiv = (glRectivPROC) extgl_GetProcAddress("glRectiv"); - glRects = (glRectsPROC) extgl_GetProcAddress("glRects"); - glRectsv = (glRectsvPROC) extgl_GetProcAddress("glRectsv"); - glRenderMode = (glRenderModePROC) extgl_GetProcAddress("glRenderMode"); - glRotated = (glRotatedPROC) extgl_GetProcAddress("glRotated"); - glRotatef = (glRotatefPROC) extgl_GetProcAddress("glRotatef"); - glScaled = (glScaledPROC) extgl_GetProcAddress("glScaled"); - glScalef = (glScalefPROC) extgl_GetProcAddress("glScalef"); - glScissor = (glScissorPROC) extgl_GetProcAddress("glScissor"); - glSelectBuffer = (glSelectBufferPROC) extgl_GetProcAddress("glSelectBuffer"); - glShadeModel = (glShadeModelPROC) extgl_GetProcAddress("glShadeModel"); - glStencilFunc = (glStencilFuncPROC) extgl_GetProcAddress("glStencilFunc"); - glStencilMask = (glStencilMaskPROC) extgl_GetProcAddress("glStencilMask"); - glStencilOp = (glStencilOpPROC) extgl_GetProcAddress("glStencilOp"); - glTexCoord1d = (glTexCoord1dPROC) extgl_GetProcAddress("glTexCoord1d"); - glTexCoord1dv = (glTexCoord1dvPROC) extgl_GetProcAddress("glTexCoord1dv"); - glTexCoord1f = (glTexCoord1fPROC) extgl_GetProcAddress("glTexCoord1f"); - glTexCoord1fv = (glTexCoord1fvPROC) extgl_GetProcAddress("glTexCoord1fv"); - glTexCoord1i = (glTexCoord1iPROC) extgl_GetProcAddress("glTexCoord1i"); - glTexCoord1iv = (glTexCoord1ivPROC) extgl_GetProcAddress("glTexCoord1iv"); - glTexCoord1s = (glTexCoord1sPROC) extgl_GetProcAddress("glTexCoord1s"); - glTexCoord1sv = (glTexCoord1svPROC) extgl_GetProcAddress("glTexCoord1sv"); - glTexCoord2d = (glTexCoord2dPROC) extgl_GetProcAddress("glTexCoord2d"); - glTexCoord2dv = (glTexCoord2dvPROC) extgl_GetProcAddress("glTexCoord2dv"); - glTexCoord2f = (glTexCoord2fPROC) extgl_GetProcAddress("glTexCoord2f"); - glTexCoord2fv = (glTexCoord2fvPROC) extgl_GetProcAddress("glTexCoord2fv"); - glTexCoord2i = (glTexCoord2iPROC) extgl_GetProcAddress("glTexCoord2i"); - glTexCoord2iv = (glTexCoord2ivPROC) extgl_GetProcAddress("glTexCoord2iv"); - glTexCoord2s = (glTexCoord2sPROC) extgl_GetProcAddress("glTexCoord2s"); - glTexCoord2sv = (glTexCoord2svPROC) extgl_GetProcAddress("glTexCoord2sv"); - glTexCoord3d = (glTexCoord3dPROC) extgl_GetProcAddress("glTexCoord3d"); - glTexCoord3dv = (glTexCoord3dvPROC) extgl_GetProcAddress("glTexCoord3dv"); - glTexCoord3f = (glTexCoord3fPROC) extgl_GetProcAddress("glTexCoord3f"); - glTexCoord3fv = (glTexCoord3fvPROC) extgl_GetProcAddress("glTexCoord3fv"); - glTexCoord3i = (glTexCoord3iPROC) extgl_GetProcAddress("glTexCoord3i"); - glTexCoord3iv = (glTexCoord3ivPROC) extgl_GetProcAddress("glTexCoord3iv"); - glTexCoord3s = (glTexCoord3sPROC) extgl_GetProcAddress("glTexCoord3s"); - glTexCoord3sv = (glTexCoord3svPROC) extgl_GetProcAddress("glTexCoord3sv"); - glTexCoord4d = (glTexCoord4dPROC) extgl_GetProcAddress("glTexCoord4d"); - glTexCoord4dv = (glTexCoord4dvPROC) extgl_GetProcAddress("glTexCoord4dv"); - glTexCoord4f = (glTexCoord4fPROC) extgl_GetProcAddress("glTexCoord4f"); - glTexCoord4fv = (glTexCoord4fvPROC) extgl_GetProcAddress("glTexCoord4fv"); - glTexCoord4i = (glTexCoord4iPROC) extgl_GetProcAddress("glTexCoord4i"); - glTexCoord4iv = (glTexCoord4ivPROC) extgl_GetProcAddress("glTexCoord4iv"); - glTexCoord4s = (glTexCoord4sPROC) extgl_GetProcAddress("glTexCoord4s"); - glTexCoord4sv = (glTexCoord4svPROC) extgl_GetProcAddress("glTexCoord4sv"); - glTexCoordPointer = (glTexCoordPointerPROC) extgl_GetProcAddress("glTexCoordPointer"); - glTexEnvf = (glTexEnvfPROC) extgl_GetProcAddress("glTexEnvf"); - glTexEnvfv = (glTexEnvfvPROC) extgl_GetProcAddress("glTexEnvfv"); - glTexEnvi = (glTexEnviPROC) extgl_GetProcAddress("glTexEnvi"); - glTexEnviv = (glTexEnvivPROC) extgl_GetProcAddress("glTexEnviv"); - glTexGend = (glTexGendPROC) extgl_GetProcAddress("glTexGend"); - glTexGendv = (glTexGendvPROC) extgl_GetProcAddress("glTexGendv"); - glTexGenf = (glTexGenfPROC) extgl_GetProcAddress("glTexGenf"); - glTexGenfv = (glTexGenfvPROC) extgl_GetProcAddress("glTexGenfv"); - glTexGeni = (glTexGeniPROC) extgl_GetProcAddress("glTexGeni"); - glTexGeniv = (glTexGenivPROC) extgl_GetProcAddress("glTexGeniv"); - glTexImage1D = (glTexImage1DPROC) extgl_GetProcAddress("glTexImage1D"); - glTexImage2D = (glTexImage2DPROC) extgl_GetProcAddress("glTexImage2D"); - glTexParameterf = (glTexParameterfPROC) extgl_GetProcAddress("glTexParameterf"); - glTexParameterfv = (glTexParameterfvPROC) extgl_GetProcAddress("glTexParameterfv"); - glTexParameteri = (glTexParameteriPROC) extgl_GetProcAddress("glTexParameteri"); - glTexParameteriv = (glTexParameterivPROC) extgl_GetProcAddress("glTexParameteriv"); - glTexSubImage1D = (glTexSubImage1DPROC) extgl_GetProcAddress("glTexSubImage1D"); - glTexSubImage2D = (glTexSubImage2DPROC) extgl_GetProcAddress("glTexSubImage2D"); - glTranslated = (glTranslatedPROC) extgl_GetProcAddress("glTranslated"); - glTranslatef = (glTranslatefPROC) extgl_GetProcAddress("glTranslatef"); - glVertex2d = (glVertex2dPROC) extgl_GetProcAddress("glVertex2d"); - glVertex2dv = (glVertex2dvPROC) extgl_GetProcAddress("glVertex2dv"); - glVertex2f = (glVertex2fPROC) extgl_GetProcAddress("glVertex2f"); - glVertex2fv = (glVertex2fvPROC) extgl_GetProcAddress("glVertex2fv"); - glVertex2i = (glVertex2iPROC) extgl_GetProcAddress("glVertex2i"); - glVertex2iv = (glVertex2ivPROC) extgl_GetProcAddress("glVertex2iv"); - glVertex2s = (glVertex2sPROC) extgl_GetProcAddress("glVertex2s"); - glVertex2sv = (glVertex2svPROC) extgl_GetProcAddress("glVertex2sv"); - glVertex3d = (glVertex3dPROC) extgl_GetProcAddress("glVertex3d"); - glVertex3dv = (glVertex3dvPROC) extgl_GetProcAddress("glVertex3dv"); - glVertex3f = (glVertex3fPROC) extgl_GetProcAddress("glVertex3f"); - glVertex3fv = (glVertex3fvPROC) extgl_GetProcAddress("glVertex3fv"); - glVertex3i = (glVertex3iPROC) extgl_GetProcAddress("glVertex3i"); - glVertex3iv = (glVertex3ivPROC) extgl_GetProcAddress("glVertex3iv"); - glVertex3s = (glVertex3sPROC) extgl_GetProcAddress("glVertex3s"); - glVertex3sv = (glVertex3svPROC) extgl_GetProcAddress("glVertex3sv"); - glVertex4d = (glVertex4dPROC) extgl_GetProcAddress("glVertex4d"); - glVertex4dv = (glVertex4dvPROC) extgl_GetProcAddress("glVertex4dv"); - glVertex4f = (glVertex4fPROC) extgl_GetProcAddress("glVertex4f"); - glVertex4fv = (glVertex4fvPROC) extgl_GetProcAddress("glVertex4fv"); - glVertex4i = (glVertex4iPROC) extgl_GetProcAddress("glVertex4i"); - glVertex4iv = (glVertex4ivPROC) extgl_GetProcAddress("glVertex4iv"); - glVertex4s = (glVertex4sPROC) extgl_GetProcAddress("glVertex4s"); - glVertex4sv = (glVertex4svPROC) extgl_GetProcAddress("glVertex4sv"); - glVertexPointer = (glVertexPointerPROC) extgl_GetProcAddress("glVertexPointer"); - glViewport = (glViewportPROC) extgl_GetProcAddress("glViewport"); -} - -static void extgl_InitOpenGL1_2(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.OpenGL12) - return; - glTexImage3D = (glTexImage3DPROC) extgl_GetProcAddress("glTexImage3D"); - glTexSubImage3D = (glTexSubImage3DPROC) extgl_GetProcAddress("glTexSubImage3D"); - glCopyTexSubImage3D = (glCopyTexSubImage3DPROC) extgl_GetProcAddress("glCopyTexSubImage3D"); - glDrawRangeElements = (glDrawRangeElementsPROC) extgl_GetProcAddress("glDrawRangeElements"); - EXTGL_SANITY_CHECK(env, ext_set, OpenGL12) -} - -static void extgl_InitARBImaging(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.GL_ARB_imaging) - return; - glBlendColor = (glBlendColorPROC) extgl_GetProcAddress("glBlendColor"); - glBlendEquation = (glBlendEquationPROC) extgl_GetProcAddress("glBlendEquation"); - glColorTable = (glColorTablePROC) extgl_GetProcAddress("glColorTable"); - glColorTableParameterfv = (glColorTableParameterfvPROC) extgl_GetProcAddress("glColorTableParameterfv"); - glColorTableParameteriv = (glColorTableParameterivPROC) extgl_GetProcAddress("glColorTableParameteriv"); - glCopyColorTable = (glCopyColorTablePROC) extgl_GetProcAddress("glCopyColorTable"); - glGetColorTable = (glGetColorTablePROC) extgl_GetProcAddress("glGetColorTable"); - glGetColorTableParameterfv = (glGetColorTableParameterfvPROC) extgl_GetProcAddress("glGetColorTableParameterfv"); - glGetColorTableParameteriv = (glGetColorTableParameterivPROC) extgl_GetProcAddress("glGetColorTableParameteriv"); - glColorSubTable = (glColorSubTablePROC) extgl_GetProcAddress("glColorSubTable"); - glCopyColorSubTable = (glCopyColorSubTablePROC) extgl_GetProcAddress("glCopyColorSubTable"); - glConvolutionFilter1D = (glConvolutionFilter1DPROC) extgl_GetProcAddress("glConvolutionFilter1D"); - glConvolutionFilter2D = (glConvolutionFilter2DPROC) extgl_GetProcAddress("glConvolutionFilter2D"); - glConvolutionParameterf = (glConvolutionParameterfPROC) extgl_GetProcAddress("glConvolutionParameterf"); - glConvolutionParameterfv = (glConvolutionParameterfvPROC) extgl_GetProcAddress("glConvolutionParameterfv"); - glConvolutionParameteri = (glConvolutionParameteriPROC) extgl_GetProcAddress("glConvolutionParameteri"); - glConvolutionParameteriv = (glConvolutionParameterivPROC) extgl_GetProcAddress("glConvolutionParameteriv"); - glCopyConvolutionFilter1D = (glCopyConvolutionFilter1DPROC) extgl_GetProcAddress("glCopyConvolutionFilter1D"); - glCopyConvolutionFilter2D = (glCopyConvolutionFilter2DPROC) extgl_GetProcAddress("glCopyConvolutionFilter2D"); - glGetConvolutionFilter = (glGetConvolutionFilterPROC) extgl_GetProcAddress("glGetConvolutionFilter"); - glGetConvolutionParameterfv = (glGetConvolutionParameterfvPROC) extgl_GetProcAddress("glGetConvolutionParameterfv"); - glGetConvolutionParameteriv = (glGetConvolutionParameterivPROC) extgl_GetProcAddress("glGetConvolutionParameteriv"); - glGetSeparableFilter = (glGetSeparableFilterPROC) extgl_GetProcAddress("glGetSeparableFilter"); - glSeparableFilter2D = (glSeparableFilter2DPROC) extgl_GetProcAddress("glSeparableFilter2D"); - glGetHistogram = (glGetHistogramPROC) extgl_GetProcAddress("glGetHistogram"); - glGetHistogramParameterfv = (glGetHistogramParameterfvPROC) extgl_GetProcAddress("glGetHistogramParameterfv"); - glGetHistogramParameteriv = (glGetHistogramParameterivPROC) extgl_GetProcAddress("glGetHistogramParameteriv"); - glGetMinmax = (glGetMinmaxPROC) extgl_GetProcAddress("glGetMinmax"); - glGetMinmaxParameterfv = (glGetMinmaxParameterfvPROC) extgl_GetProcAddress("glGetMinmaxParameterfv"); - glGetMinmaxParameteriv = (glGetMinmaxParameterivPROC) extgl_GetProcAddress("glGetMinmaxParameteriv"); - glHistogram = (glHistogramPROC) extgl_GetProcAddress("glHistogram"); - glMinmax = (glMinmaxPROC) extgl_GetProcAddress("glMinmax"); - glResetHistogram = (glResetHistogramPROC) extgl_GetProcAddress("glResetHistogram"); - glResetMinmax = (glResetMinmaxPROC) extgl_GetProcAddress("glResetMinmax"); - EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_imaging) -} - -static void extgl_InitOpenGL1_3(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.OpenGL13) - return; - glActiveTexture = (glActiveTexturePROC) extgl_GetProcAddress("glActiveTexture"); - glClientActiveTexture = (glClientActiveTexturePROC) extgl_GetProcAddress("glClientActiveTexture"); - - glMultiTexCoord1d = (glMultiTexCoord1dPROC) extgl_GetProcAddress("glMultiTexCoord1d"); - glMultiTexCoord1dv = (glMultiTexCoord1dvPROC) extgl_GetProcAddress("glMultiTexCoord1dv"); - glMultiTexCoord1f = (glMultiTexCoord1fPROC) extgl_GetProcAddress("glMultiTexCoord1f"); - glMultiTexCoord1fv = (glMultiTexCoord1fvPROC) extgl_GetProcAddress("glMultiTexCoord1fv"); - glMultiTexCoord1i = (glMultiTexCoord1iPROC) extgl_GetProcAddress("glMultiTexCoord1i"); - glMultiTexCoord1iv = (glMultiTexCoord1ivPROC) extgl_GetProcAddress("glMultiTexCoord1iv"); - glMultiTexCoord1s = (glMultiTexCoord1sPROC) extgl_GetProcAddress("glMultiTexCoord1s"); - glMultiTexCoord1sv = (glMultiTexCoord1svPROC) extgl_GetProcAddress("glMultiTexCoord1sv"); - - glMultiTexCoord2d = (glMultiTexCoord2dPROC) extgl_GetProcAddress("glMultiTexCoord2d"); - glMultiTexCoord2dv = (glMultiTexCoord2dvPROC) extgl_GetProcAddress("glMultiTexCoord2dv"); - glMultiTexCoord2f = (glMultiTexCoord2fPROC) extgl_GetProcAddress("glMultiTexCoord2f"); - glMultiTexCoord2fv = (glMultiTexCoord2fvPROC) extgl_GetProcAddress("glMultiTexCoord2fv"); - glMultiTexCoord2i = (glMultiTexCoord2iPROC) extgl_GetProcAddress("glMultiTexCoord2i"); - glMultiTexCoord2iv = (glMultiTexCoord2ivPROC) extgl_GetProcAddress("glMultiTexCoord2iv"); - glMultiTexCoord2s = (glMultiTexCoord2sPROC) extgl_GetProcAddress("glMultiTexCoord2s"); - glMultiTexCoord2sv = (glMultiTexCoord2svPROC) extgl_GetProcAddress("glMultiTexCoord2sv"); - - glMultiTexCoord3d = (glMultiTexCoord3dPROC) extgl_GetProcAddress("glMultiTexCoord3d"); - glMultiTexCoord3dv = (glMultiTexCoord3dvPROC) extgl_GetProcAddress("glMultiTexCoord3dv"); - glMultiTexCoord3f = (glMultiTexCoord3fPROC) extgl_GetProcAddress("glMultiTexCoord3f"); - glMultiTexCoord3fv = (glMultiTexCoord3fvPROC) extgl_GetProcAddress("glMultiTexCoord3fv"); - glMultiTexCoord3i = (glMultiTexCoord3iPROC) extgl_GetProcAddress("glMultiTexCoord3i"); - glMultiTexCoord3iv = (glMultiTexCoord3ivPROC) extgl_GetProcAddress("glMultiTexCoord3iv"); - glMultiTexCoord3s = (glMultiTexCoord3sPROC) extgl_GetProcAddress("glMultiTexCoord3s"); - glMultiTexCoord3sv = (glMultiTexCoord3svPROC) extgl_GetProcAddress("glMultiTexCoord3sv"); - - glMultiTexCoord4d = (glMultiTexCoord4dPROC) extgl_GetProcAddress("glMultiTexCoord4d"); - glMultiTexCoord4dv = (glMultiTexCoord4dvPROC) extgl_GetProcAddress("glMultiTexCoord4dv"); - glMultiTexCoord4f = (glMultiTexCoord4fPROC) extgl_GetProcAddress("glMultiTexCoord4f"); - glMultiTexCoord4fv = (glMultiTexCoord4fvPROC) extgl_GetProcAddress("glMultiTexCoord4fv"); - glMultiTexCoord4i = (glMultiTexCoord4iPROC) extgl_GetProcAddress("glMultiTexCoord4i"); - glMultiTexCoord4iv = (glMultiTexCoord4ivPROC) extgl_GetProcAddress("glMultiTexCoord4iv"); - glMultiTexCoord4s = (glMultiTexCoord4sPROC) extgl_GetProcAddress("glMultiTexCoord4s"); - glMultiTexCoord4sv = (glMultiTexCoord4svPROC) extgl_GetProcAddress("glMultiTexCoord4sv"); - - glLoadTransposeMatrixf = (glLoadTransposeMatrixfPROC) extgl_GetProcAddress("glLoadTransposeMatrixf"); - glLoadTransposeMatrixd = (glLoadTransposeMatrixdPROC) extgl_GetProcAddress("glLoadTransposeMatrixd"); - glMultTransposeMatrixf = (glMultTransposeMatrixfPROC) extgl_GetProcAddress("glMultTransposeMatrixf"); - glMultTransposeMatrixd = (glMultTransposeMatrixdPROC) extgl_GetProcAddress("glMultTransposeMatrixd"); - glCompressedTexImage3D = (glCompressedTexImage3DPROC) extgl_GetProcAddress("glCompressedTexImage3D"); - glCompressedTexImage2D = (glCompressedTexImage2DPROC) extgl_GetProcAddress("glCompressedTexImage2D"); - glCompressedTexImage1D = (glCompressedTexImage1DPROC) extgl_GetProcAddress("glCompressedTexImage1D"); - glCompressedTexSubImage3D = (glCompressedTexSubImage3DPROC) extgl_GetProcAddress("glCompressedTexSubImage3D"); - glCompressedTexSubImage2D = (glCompressedTexSubImage2DPROC) extgl_GetProcAddress("glCompressedTexSubImage2D"); - glCompressedTexSubImage1D = (glCompressedTexSubImage1DPROC) extgl_GetProcAddress("glCompressedTexSubImage1D"); - glGetCompressedTexImage = (glGetCompressedTexImagePROC) extgl_GetProcAddress("glGetCompressedTexImage"); - - glSampleCoverage = (glSampleCoveragePROC) extgl_GetProcAddress("glSampleCoverage"); - EXTGL_SANITY_CHECK(env, ext_set, OpenGL13) -} - -static void extgl_InitOpenGL1_4(JNIEnv *env, jobject ext_set) -{ - if (!extgl_Extensions.OpenGL14) - return; - glBlendColor = (glBlendColorPROC) extgl_GetProcAddress("glBlendColor"); - glBlendEquation = (glBlendEquationPROC) extgl_GetProcAddress("glBlendEquation"); - glFogCoordf = (glFogCoordfPROC) extgl_GetProcAddress("glFogCoordf"); - glFogCoordfv = (glFogCoordfvPROC) extgl_GetProcAddress("glFogCoordfv"); - glFogCoordd = (glFogCoorddPROC) extgl_GetProcAddress("glFogCoordd"); - glFogCoorddv = (glFogCoorddvPROC) extgl_GetProcAddress("glFogCoorddv"); - glFogCoordPointer = (glFogCoordPointerPROC) extgl_GetProcAddress("glFogCoordPointer"); - glMultiDrawArrays = (glMultiDrawArraysPROC) extgl_GetProcAddress("glMultiDrawArrays"); - glMultiDrawElements = (glMultiDrawElementsPROC) extgl_GetProcAddress("glMultiDrawElements"); - glPointParameterf = (glPointParameterfPROC) extgl_GetProcAddress("glPointParameterf"); - glPointParameterfv = (glPointParameterfvPROC) extgl_GetProcAddress("glPointParameterfv"); - glSecondaryColor3b = (glSecondaryColor3bPROC) extgl_GetProcAddress("glSecondaryColor3b"); - glSecondaryColor3bv = (glSecondaryColor3bvPROC) extgl_GetProcAddress("glSecondaryColor3bv"); - glSecondaryColor3d = (glSecondaryColor3dPROC) extgl_GetProcAddress("glSecondaryColor3d"); - glSecondaryColor3dv = (glSecondaryColor3dvPROC) extgl_GetProcAddress("glSecondaryColor3dv"); - glSecondaryColor3f = (glSecondaryColor3fPROC) extgl_GetProcAddress("glSecondaryColor3f"); - glSecondaryColor3fv = (glSecondaryColor3fvPROC) extgl_GetProcAddress("glSecondaryColor3fv"); - glSecondaryColor3i = (glSecondaryColor3iPROC) extgl_GetProcAddress("glSecondaryColor3i"); - glSecondaryColor3iv = (glSecondaryColor3ivPROC) extgl_GetProcAddress("glSecondaryColor3iv"); - glSecondaryColor3s = (glSecondaryColor3sPROC) extgl_GetProcAddress("glSecondaryColor3s"); - glSecondaryColor3sv = (glSecondaryColor3svPROC) extgl_GetProcAddress("glSecondaryColor3sv"); - glSecondaryColor3ub = (glSecondaryColor3ubPROC) extgl_GetProcAddress("glSecondaryColor3ub"); - glSecondaryColor3ubv = (glSecondaryColor3ubvPROC) extgl_GetProcAddress("glSecondaryColor3ubv"); - glSecondaryColor3ui = (glSecondaryColor3uiPROC) extgl_GetProcAddress("glSecondaryColor3ui"); - glSecondaryColor3uiv = (glSecondaryColor3uivPROC) extgl_GetProcAddress("glSecondaryColor3uiv"); - glSecondaryColor3us = (glSecondaryColor3usPROC) extgl_GetProcAddress("glSecondaryColor3us"); - glSecondaryColor3usv = (glSecondaryColor3usvPROC) extgl_GetProcAddress("glSecondaryColor3usv"); - glSecondaryColorPointer = (glSecondaryColorPointerPROC) extgl_GetProcAddress("glSecondaryColorPointer"); - glBlendFuncSeparate = (glBlendFuncSeparatePROC) extgl_GetProcAddress("glBlendFuncSeparate"); - glWindowPos2d = (glWindowPos2dPROC) extgl_GetProcAddress("glWindowPos2d"); - glWindowPos2f = (glWindowPos2fPROC) extgl_GetProcAddress("glWindowPos2f"); - glWindowPos2i = (glWindowPos2iPROC) extgl_GetProcAddress("glWindowPos2i"); - glWindowPos2s = (glWindowPos2sPROC) extgl_GetProcAddress("glWindowPos2s"); - glWindowPos2dv = (glWindowPos2dvPROC) extgl_GetProcAddress("glWindowPos2dv"); - glWindowPos2fv = (glWindowPos2fvPROC) extgl_GetProcAddress("glWindowPos2fv"); - glWindowPos2iv = (glWindowPos2ivPROC) extgl_GetProcAddress("glWindowPos2iv"); - glWindowPos2sv = (glWindowPos2svPROC) extgl_GetProcAddress("glWindowPos2sv"); - glWindowPos3d = (glWindowPos3dPROC) extgl_GetProcAddress("glWindowPos3d"); - glWindowPos3f = (glWindowPos3fPROC) extgl_GetProcAddress("glWindowPos3f"); - glWindowPos3i = (glWindowPos3iPROC) extgl_GetProcAddress("glWindowPos3i"); - glWindowPos3s = (glWindowPos3sPROC) extgl_GetProcAddress("glWindowPos3s"); - glWindowPos3dv = (glWindowPos3dvPROC) extgl_GetProcAddress("glWindowPos3dv"); - glWindowPos3fv = (glWindowPos3fvPROC) extgl_GetProcAddress("glWindowPos3fv"); - glWindowPos3iv = (glWindowPos3ivPROC) extgl_GetProcAddress("glWindowPos3iv"); - glWindowPos3sv = (glWindowPos3svPROC) extgl_GetProcAddress("glWindowPos3sv"); - EXTGL_SANITY_CHECK(env, ext_set, OpenGL14) -} - static void extgl_InitGLUSupportedExtensions(JNIEnv *env, jobject ext_set) { @@ -3275,6 +1397,51 @@ static void extgl_InitSupportedExtensions(JNIEnv *env, jobject ext_set) extgl_Extensions.GL_SGIX_shadow = GLQueryExtension(env, ext_set, "GL_SGIX_shadow"); } +extern void extgl_InitOpenGL1_1(); +extern void extgl_InitARBTransposeMatrix(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBMultisample(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBPointParameters(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBVertexBlend(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBMatrixPalette(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBWindowPos(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBTextureCompression(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBProgram(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBVertexProgram(JNIEnv *env, jobject ext_set); +//extern void extgl_InitARBFragmentProgram(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBVertexBufferObject(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBImaging(JNIEnv *env, jobject ext_set); +extern void extgl_InitARBMultitexture(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTCompiledVertexArray(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTSecondaryColor(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTFogCoord(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTPointParameters(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTVertexWeighting(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTMultiDrawArrays(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTVertexShader(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTDrawRangeElements(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTStencilTwoSide(JNIEnv *env, jobject ext_set); +extern void extgl_InitEXTBlendFuncSeparate(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVVertexArrayRange(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVRegisterCombiners(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVProgram(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVVertexProgram(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVFragmentProgram(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVFence(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVRegisterCombiners2(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVOcclusionQuery(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVPointSprite(JNIEnv *env, jobject ext_set); +extern void extgl_InitNVEvaluators(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIPNTriangles(JNIEnv *env, jobject ext_set); +extern void extgl_InitATISeparateStencil(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIEnvmapBumpmap(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIFragmentShader(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIElementArray(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIVertexStreams(JNIEnv *env, jobject ext_set); +extern void extgl_InitATIVertexArrayObject(JNIEnv *env, jobject ext_set); +extern void extgl_InitOpenGL1_2(JNIEnv *env, jobject ext_set); +extern void extgl_InitOpenGL1_3(JNIEnv *env, jobject ext_set); +extern void extgl_InitOpenGL1_4(JNIEnv *env, jobject ext_set); + /* extgl_Init the extensions and load all the functions */ bool extgl_Initialize(JNIEnv *env, jobject ext_set) { @@ -3287,50 +1454,52 @@ bool extgl_Initialize(JNIEnv *env, jobject ext_set) extgl_InitGLUSupportedExtensions(env, ext_set); extgl_InitSupportedExtensions(env, ext_set); - extgl_InitEXTNurbsTesselator(env, ext_set); + //extgl_InitEXTNurbsTesselator(env, ext_set); /* first load the extensions */ extgl_InitARBTransposeMatrix(env, ext_set); extgl_InitARBMultisample(env, ext_set); + extgl_InitARBPointParameters(env, ext_set); + extgl_InitARBVertexBlend(env, ext_set); + extgl_InitARBMatrixPalette(env, ext_set); + extgl_InitARBWindowPos(env, ext_set); + extgl_InitARBTextureCompression(env, ext_set); + extgl_InitARBProgram(env, ext_set); + extgl_InitARBVertexProgram(env, ext_set); +// extgl_InitARBFragmentProgram(env, ext_set); + extgl_InitARBVertexBufferObject(env, ext_set); + extgl_InitARBImaging(env, ext_set); + extgl_InitARBMultitexture(env, ext_set); extgl_InitEXTCompiledVertexArray(env, ext_set); extgl_InitEXTSecondaryColor(env, ext_set); extgl_InitEXTFogCoord(env, ext_set); - extgl_InitNVVertexArrayRange(env, ext_set); extgl_InitEXTPointParameters(env, ext_set); - extgl_InitNVRegisterCombiners(env, ext_set); extgl_InitEXTVertexWeighting(env, ext_set); - extgl_InitNVVertexProgram(env, ext_set); + extgl_InitEXTMultiDrawArrays(env, ext_set); + extgl_InitEXTVertexShader(env, ext_set); + extgl_InitEXTDrawRangeElements(env, ext_set); + extgl_InitEXTStencilTwoSide(env, ext_set); + //extgl_InitEXTCullVertex(env, ext_set); + extgl_InitEXTBlendFuncSeparate(env, ext_set); + extgl_InitNVVertexArrayRange(env, ext_set); + extgl_InitNVRegisterCombiners(env, ext_set); extgl_InitNVFence(env, ext_set); extgl_InitNVRegisterCombiners2(env, ext_set); + extgl_InitNVOcclusionQuery(env, ext_set); + extgl_InitNVPointSprite(env, ext_set); + //extgl_InitNVElementArray(env, ext_set); + extgl_InitNVEvaluators(env, ext_set); + extgl_InitNVProgram(env, ext_set); + extgl_InitNVVertexProgram(env, ext_set); + extgl_InitNVFragmentProgram(env, ext_set); + //extgl_InitNVPrimitiveRestart(env, ext_set); extgl_InitATIPNTriangles(env, ext_set); extgl_InitATISeparateStencil(env, ext_set); - extgl_InitARBPointParameters(env, ext_set); - extgl_InitARBVertexBlend(env, ext_set); - extgl_InitEXTMultiDrawArrays(env, ext_set); - extgl_InitARBMatrixPalette(env, ext_set); - extgl_InitEXTVertexShader(env, ext_set); extgl_InitATIEnvmapBumpmap(env, ext_set); extgl_InitATIFragmentShader(env, ext_set); extgl_InitATIElementArray(env, ext_set); extgl_InitATIVertexStreams(env, ext_set); extgl_InitATIVertexArrayObject(env, ext_set); - extgl_InitNVOcclusionQuery(env, ext_set); - extgl_InitNVPointSprite(env, ext_set); - extgl_InitARBWindowPos(env, ext_set); - extgl_InitARBTextureCompression(env, ext_set); - extgl_InitEXTDrawRangeElements(env, ext_set); - extgl_InitEXTStencilTwoSide(env, ext_set); - extgl_InitARBVertexProgram(env, ext_set); - extgl_InitARBVertexBufferObject(env, ext_set); - extgl_InitEXTCullVertex(env, ext_set); - extgl_InitEXTBlendFuncSeparate(env, ext_set); - extgl_InitARBImaging(env, ext_set); - extgl_InitARBMultitexture(env, ext_set); - extgl_InitNVElementArray(env, ext_set); - extgl_InitNVEvaluators(env, ext_set); - extgl_InitNVFragmentProgram(env, ext_set); - extgl_InitNVPrimitiveRestart(env, ext_set); - extgl_InitARBFragmentProgram(env, ext_set); /* now load core opengl */ extgl_InitOpenGL1_2(env, ext_set); diff --git a/src/native/common/extgl.h b/src/native/common/extgl.h index 8ea4333b..46c5c038 100644 --- a/src/native/common/extgl.h +++ b/src/native/common/extgl.h @@ -1691,7 +1691,7 @@ extern gluUnProject4PROC gluUnProject4; #define GL_TEXTURE_COMPONENTS GL_TEXTURE_INTERNAL_FORMAT /* functions */ -typedef void (APIENTRY * glAccumPROC) (GLenum op, GLfloat value); +/*typedef void (APIENTRY * glAccumPROC) (GLenum op, GLfloat value); typedef void (APIENTRY * glAlphaFuncPROC) (GLenum func, GLclampf ref); typedef GLboolean (APIENTRY * glAreTexturesResidentPROC) (GLsizei n, const GLuint *textures, GLboolean *residences); typedef void (APIENTRY * glArrayElementPROC) (GLint i); @@ -2029,8 +2029,6 @@ typedef void (APIENTRY * glVertex4svPROC) (const GLshort *v); typedef void (APIENTRY * glVertexPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); typedef void (APIENTRY * glViewportPROC) (GLint x, GLint y, GLsizei width, GLsizei height); - - extern glAccumPROC glAccum; extern glAlphaFuncPROC glAlphaFunc; extern glAreTexturesResidentPROC glAreTexturesResident; @@ -2149,7 +2147,6 @@ extern glGetPixelMapusvPROC glGetPixelMapusv; extern glGetPointervPROC glGetPointerv; extern glGetPolygonStipplePROC glGetPolygonStipple; extern glGetStringPROC glGetString; -//const GLubyte * glGetString(const GLenum); extern glGetTexEnvfvPROC glGetTexEnvfv; extern glGetTexEnvivPROC glGetTexEnviv; extern glGetTexGendvPROC glGetTexGendv; @@ -2369,7 +2366,7 @@ extern glVertex4sPROC glVertex4s; extern glVertex4svPROC glVertex4sv; extern glVertexPointerPROC glVertexPointer; extern glViewportPROC glViewport; - +*/ /* OpenGL 1.2 */ #define GL_RESCALE_NORMAL 0x803A @@ -2489,85 +2486,6 @@ extern glViewportPROC glViewport; #define GL_CONSTANT_ALPHA 0x8003 #define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 -typedef void (APIENTRY * glColorTablePROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table ); -typedef void (APIENTRY * glColorSubTablePROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data ); -typedef void (APIENTRY * glColorTableParameterivPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glColorTableParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glCopyColorSubTablePROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glCopyColorTablePROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glGetColorTablePROC) (GLenum target, GLenum format, GLenum type, GLvoid *table ); -typedef void (APIENTRY * glGetColorTableParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetColorTableParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glBlendEquationPROC) (GLenum mode ); -typedef void (APIENTRY * glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); -typedef void (APIENTRY * glHistogramPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ); -typedef void (APIENTRY * glResetHistogramPROC) (GLenum target ); -typedef void (APIENTRY * glGetHistogramPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values ); -typedef void (APIENTRY * glGetHistogramParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetHistogramParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glMinmaxPROC) (GLenum target, GLenum internalformat, GLboolean sink ); -typedef void (APIENTRY * glResetMinmaxPROC) (GLenum target ); -typedef void (APIENTRY * glGetMinmaxPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values ); -typedef void (APIENTRY * glGetMinmaxParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetMinmaxParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image ); -typedef void (APIENTRY * glConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image ); -typedef void (APIENTRY * glConvolutionParameterfPROC) (GLenum target, GLenum pname, GLfloat params ); -typedef void (APIENTRY * glConvolutionParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params ); -typedef void (APIENTRY * glConvolutionParameteriPROC) (GLenum target, GLenum pname, GLint params ); -typedef void (APIENTRY * glConvolutionParameterivPROC) (GLenum target, GLenum pname, const GLint *params ); -typedef void (APIENTRY * glCopyConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glCopyConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (APIENTRY * glGetConvolutionFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image ); -typedef void (APIENTRY * glGetConvolutionParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetConvolutionParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glSeparableFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column ); -typedef void (APIENTRY * glGetSeparableFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); -typedef void (APIENTRY * glDrawRangeElementsPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); -typedef void (APIENTRY * glTexImage3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels ); -typedef void (APIENTRY * glTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glCopyTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ); - - -extern glBlendColorPROC glBlendColor; -extern glBlendEquationPROC glBlendEquation; -extern glColorTablePROC glColorTable; -extern glColorTableParameterfvPROC glColorTableParameterfv; -extern glColorTableParameterivPROC glColorTableParameteriv; -extern glCopyColorTablePROC glCopyColorTable; -extern glGetColorTablePROC glGetColorTable; -extern glGetColorTableParameterfvPROC glGetColorTableParameterfv; -extern glGetColorTableParameterivPROC glGetColorTableParameteriv; -extern glColorSubTablePROC glColorSubTable; -extern glCopyColorSubTablePROC glCopyColorSubTable; -extern glConvolutionFilter1DPROC glConvolutionFilter1D; -extern glConvolutionFilter2DPROC glConvolutionFilter2D; -extern glConvolutionParameterfPROC glConvolutionParameterf; -extern glConvolutionParameterfvPROC glConvolutionParameterfv; -extern glConvolutionParameteriPROC glConvolutionParameteri; -extern glConvolutionParameterivPROC glConvolutionParameteriv; -extern glCopyConvolutionFilter1DPROC glCopyConvolutionFilter1D; -extern glCopyConvolutionFilter2DPROC glCopyConvolutionFilter2D; -extern glGetConvolutionFilterPROC glGetConvolutionFilter; -extern glGetConvolutionParameterfvPROC glGetConvolutionParameterfv; -extern glGetConvolutionParameterivPROC glGetConvolutionParameteriv; -extern glGetSeparableFilterPROC glGetSeparableFilter; -extern glSeparableFilter2DPROC glSeparableFilter2D; -extern glGetHistogramPROC glGetHistogram; -extern glGetHistogramParameterfvPROC glGetHistogramParameterfv; -extern glGetHistogramParameterivPROC glGetHistogramParameteriv; -extern glGetMinmaxPROC glGetMinmax; -extern glGetMinmaxParameterfvPROC glGetMinmaxParameterfv; -extern glGetMinmaxParameterivPROC glGetMinmaxParameteriv; -extern glHistogramPROC glHistogram; -extern glMinmaxPROC glMinmax; -extern glResetHistogramPROC glResetHistogram; -extern glResetMinmaxPROC glResetMinmax; -extern glDrawRangeElementsPROC glDrawRangeElements; -extern glTexImage3DPROC glTexImage3D; -extern glTexSubImage3DPROC glTexSubImage3D; -extern glCopyTexSubImage3DPROC glCopyTexSubImage3D; - /* OpenGL 1.3 */ #define GL_TEXTURE0 0x84C0 @@ -2672,100 +2590,6 @@ extern glCopyTexSubImage3DPROC glCopyTexSubImage3D; #define GL_DOT3_RGBA 0x86AF #define GL_CLAMP_TO_BORDER 0x812D -typedef void (APIENTRY * glActiveTexturePROC) (GLenum texture ); -typedef void (APIENTRY * glClientActiveTexturePROC) (GLenum texture ); -typedef void (APIENTRY * glCompressedTexImage1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glGetCompressedTexImagePROC) (GLenum target, GLint lod, GLvoid *img ); -typedef void (APIENTRY * glMultiTexCoord1dPROC) (GLenum target, GLdouble s ); -typedef void (APIENTRY * glMultiTexCoord1dvPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord1fPROC) (GLenum target, GLfloat s ); -typedef void (APIENTRY * glMultiTexCoord1fvPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord1iPROC) (GLenum target, GLint s ); -typedef void (APIENTRY * glMultiTexCoord1ivPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord1sPROC) (GLenum target, GLshort s ); -typedef void (APIENTRY * glMultiTexCoord1svPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord2dPROC) (GLenum target, GLdouble s, GLdouble t ); -typedef void (APIENTRY * glMultiTexCoord2dvPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord2fPROC) (GLenum target, GLfloat s, GLfloat t ); -typedef void (APIENTRY * glMultiTexCoord2fvPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord2iPROC) (GLenum target, GLint s, GLint t ); -typedef void (APIENTRY * glMultiTexCoord2ivPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord2sPROC) (GLenum target, GLshort s, GLshort t ); -typedef void (APIENTRY * glMultiTexCoord2svPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord3dPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r ); -typedef void (APIENTRY * glMultiTexCoord3dvPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord3fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); -typedef void (APIENTRY * glMultiTexCoord3fvPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord3iPROC) (GLenum target, GLint s, GLint t, GLint r ); -typedef void (APIENTRY * glMultiTexCoord3ivPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord3sPROC) (GLenum target, GLshort s, GLshort t, GLshort r ); -typedef void (APIENTRY * glMultiTexCoord3svPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord4dPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); -typedef void (APIENTRY * glMultiTexCoord4dvPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord4fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -typedef void (APIENTRY * glMultiTexCoord4fvPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord4iPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q ); -typedef void (APIENTRY * glMultiTexCoord4ivPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord4sPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); -typedef void (APIENTRY * glMultiTexCoord4svPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glLoadTransposeMatrixdPROC) (const GLdouble m[16] ); -typedef void (APIENTRY * glLoadTransposeMatrixfPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixdPROC) (const GLdouble m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixfPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glSampleCoveragePROC) (GLclampf value, GLboolean invert ); - -extern glActiveTexturePROC glActiveTexture; -extern glClientActiveTexturePROC glClientActiveTexture; -extern glMultiTexCoord1dPROC glMultiTexCoord1d; -extern glMultiTexCoord1dvPROC glMultiTexCoord1dv; -extern glMultiTexCoord1fPROC glMultiTexCoord1f; -extern glMultiTexCoord1fvPROC glMultiTexCoord1fv; -extern glMultiTexCoord1iPROC glMultiTexCoord1i; -extern glMultiTexCoord1ivPROC glMultiTexCoord1iv; -extern glMultiTexCoord1sPROC glMultiTexCoord1s; -extern glMultiTexCoord1svPROC glMultiTexCoord1sv; -extern glMultiTexCoord2dPROC glMultiTexCoord2d; -extern glMultiTexCoord2dvPROC glMultiTexCoord2dv; -extern glMultiTexCoord2fPROC glMultiTexCoord2f; -extern glMultiTexCoord2fvPROC glMultiTexCoord2fv; -extern glMultiTexCoord2iPROC glMultiTexCoord2i; -extern glMultiTexCoord2ivPROC glMultiTexCoord2iv; -extern glMultiTexCoord2sPROC glMultiTexCoord2s; -extern glMultiTexCoord2svPROC glMultiTexCoord2sv; -extern glMultiTexCoord3dPROC glMultiTexCoord3d; -extern glMultiTexCoord3dvPROC glMultiTexCoord3dv; -extern glMultiTexCoord3fPROC glMultiTexCoord3f; -extern glMultiTexCoord3fvPROC glMultiTexCoord3fv; -extern glMultiTexCoord3iPROC glMultiTexCoord3i; -extern glMultiTexCoord3ivPROC glMultiTexCoord3iv; -extern glMultiTexCoord3sPROC glMultiTexCoord3s; -extern glMultiTexCoord3svPROC glMultiTexCoord3sv; -extern glMultiTexCoord4dPROC glMultiTexCoord4d; -extern glMultiTexCoord4dvPROC glMultiTexCoord4dv; -extern glMultiTexCoord4fPROC glMultiTexCoord4f; -extern glMultiTexCoord4fvPROC glMultiTexCoord4fv; -extern glMultiTexCoord4iPROC glMultiTexCoord4i; -extern glMultiTexCoord4ivPROC glMultiTexCoord4iv; -extern glMultiTexCoord4sPROC glMultiTexCoord4s; -extern glMultiTexCoord4svPROC glMultiTexCoord4sv; -extern glLoadTransposeMatrixfPROC glLoadTransposeMatrixf; -extern glLoadTransposeMatrixdPROC glLoadTransposeMatrixd; -extern glMultTransposeMatrixfPROC glMultTransposeMatrixf; -extern glMultTransposeMatrixdPROC glMultTransposeMatrixd; -extern glCompressedTexImage3DPROC glCompressedTexImage3D; -extern glCompressedTexImage2DPROC glCompressedTexImage2D; -extern glCompressedTexImage1DPROC glCompressedTexImage1D; -extern glCompressedTexSubImage3DPROC glCompressedTexSubImage3D; -extern glCompressedTexSubImage2DPROC glCompressedTexSubImage2D; -extern glCompressedTexSubImage1DPROC glCompressedTexSubImage1D; -extern glGetCompressedTexImagePROC glGetCompressedTexImage; -extern glSampleCoveragePROC glSampleCoverage; - /* OpenGL 1.4 */ #define GL_GENERATE_MIPMAP 0x8191 @@ -2808,259 +2632,10 @@ extern glSampleCoveragePROC glSampleCoverage; #define GL_MAX_TEXTURE_LOD_BIAS 0x84FD #define GL_GL_MIRRORED_REPEAT 0x8370 -typedef void (APIENTRY * glFogCoordfPROC) (GLfloat coord); -typedef void (APIENTRY * glFogCoordfvPROC) (const GLfloat *coord); -typedef void (APIENTRY * glFogCoorddPROC) (GLdouble coord); -typedef void (APIENTRY * glFogCoorddvPROC) (const GLdouble *coord); -typedef void (APIENTRY * glFogCoordPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glMultiDrawArraysPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); -typedef void (APIENTRY * glMultiDrawElementsPROC) (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount); -typedef void (APIENTRY * glPointParameterfPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameterfvPROC) (GLenum pname, GLfloat *params); -typedef void (APIENTRY * glSecondaryColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (APIENTRY * glSecondaryColor3bvPROC) (const GLbyte *v); -typedef void (APIENTRY * glSecondaryColor3dPROC) (GLdouble red, GLdouble green, GLdouble blue); -typedef void (APIENTRY * glSecondaryColor3dvPROC) (const GLdouble *v); -typedef void (APIENTRY * glSecondaryColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (APIENTRY * glSecondaryColor3fvPROC) (const GLfloat *v); -typedef void (APIENTRY * glSecondaryColor3iPROC) (GLint red, GLint green, GLint blue); -typedef void (APIENTRY * glSecondaryColor3ivPROC) (const GLint *v); -typedef void (APIENTRY * glSecondaryColor3sPROC) (GLshort red, GLshort green, GLshort blue); -typedef void (APIENTRY * glSecondaryColor3svPROC) (const GLshort *v); -typedef void (APIENTRY * glSecondaryColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (APIENTRY * glSecondaryColor3ubvPROC) (const GLubyte *v); -typedef void (APIENTRY * glSecondaryColor3uiPROC) (GLuint red, GLuint green, GLuint blue); -typedef void (APIENTRY * glSecondaryColor3uivPROC) (const GLuint *v); -typedef void (APIENTRY * glSecondaryColor3usPROC) (GLushort red, GLushort green, GLushort blue); -typedef void (APIENTRY * glSecondaryColor3usvPROC) (const GLushort *v); -typedef void (APIENTRY * glSecondaryColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glBlendFuncSeparatePROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -typedef void (APIENTRY * glWindowPos2dPROC) (GLdouble x, GLdouble y); -typedef void (APIENTRY * glWindowPos2fPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glWindowPos2iPROC) (GLint x, GLint y); -typedef void (APIENTRY * glWindowPos2sPROC) (GLshort x, GLshort y); -typedef void (APIENTRY * glWindowPos2dvPROC) (const GLdouble *p); -typedef void (APIENTRY * glWindowPos2fvPROC) (const GLfloat *p); -typedef void (APIENTRY * glWindowPos2ivPROC) (const GLint *p); -typedef void (APIENTRY * glWindowPos2svPROC) (const GLshort *p); -typedef void (APIENTRY * glWindowPos3dPROC) (GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glWindowPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glWindowPos3iPROC) (GLint x, GLint y, GLint z); -typedef void (APIENTRY * glWindowPos3sPROC) (GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glWindowPos3dvPROC) (const GLdouble *p); -typedef void (APIENTRY * glWindowPos3fvPROC) (const GLfloat *p); -typedef void (APIENTRY * glWindowPos3ivPROC) (const GLint *p); -typedef void (APIENTRY * glWindowPos3svPROC) (const GLshort *p); - -extern glFogCoordfPROC glFogCoordf; -extern glFogCoordfvPROC glFogCoordfv; -extern glFogCoorddPROC glFogCoordd; -extern glFogCoorddvPROC glFogCoorddv; -extern glFogCoordPointerPROC glFogCoordPointer; -extern glMultiDrawArraysPROC glMultiDrawArrays; -extern glMultiDrawElementsPROC glMultiDrawElements; -extern glPointParameterfPROC glPointParameterf; -extern glPointParameterfvPROC glPointParameterfv; -extern glSecondaryColor3bPROC glSecondaryColor3b; -extern glSecondaryColor3bvPROC glSecondaryColor3bv; -extern glSecondaryColor3dPROC glSecondaryColor3d; -extern glSecondaryColor3dvPROC glSecondaryColor3dv; -extern glSecondaryColor3fPROC glSecondaryColor3f; -extern glSecondaryColor3fvPROC glSecondaryColor3fv; -extern glSecondaryColor3iPROC glSecondaryColor3i; -extern glSecondaryColor3ivPROC glSecondaryColor3iv; -extern glSecondaryColor3sPROC glSecondaryColor3s; -extern glSecondaryColor3svPROC glSecondaryColor3sv; -extern glSecondaryColor3ubPROC glSecondaryColor3ub; -extern glSecondaryColor3ubvPROC glSecondaryColor3ubv; -extern glSecondaryColor3uiPROC glSecondaryColor3ui; -extern glSecondaryColor3uivPROC glSecondaryColor3uiv; -extern glSecondaryColor3usPROC glSecondaryColor3us; -extern glSecondaryColor3usvPROC glSecondaryColor3usv; -extern glSecondaryColorPointerPROC glSecondaryColorPointer; -extern glBlendFuncSeparatePROC glBlendFuncSeparate; -extern glWindowPos2dPROC glWindowPos2d; -extern glWindowPos2fPROC glWindowPos2f; -extern glWindowPos2iPROC glWindowPos2i; -extern glWindowPos2sPROC glWindowPos2s; -extern glWindowPos2dvPROC glWindowPos2dv; -extern glWindowPos2fvPROC glWindowPos2fv; -extern glWindowPos2ivPROC glWindowPos2iv; -extern glWindowPos2svPROC glWindowPos2sv; -extern glWindowPos3dPROC glWindowPos3d; -extern glWindowPos3fPROC glWindowPos3f; -extern glWindowPos3iPROC glWindowPos3i; -extern glWindowPos3sPROC glWindowPos3s; -extern glWindowPos3dvPROC glWindowPos3dv; -extern glWindowPos3fvPROC glWindowPos3fv; -extern glWindowPos3ivPROC glWindowPos3iv; -extern glWindowPos3svPROC glWindowPos3sv; - /*-------------------------------------------------------------------*/ /*------------EXTENSIONS---------------------------------------------*/ /*-------------------------------------------------------------------*/ -/*-------------------------------------------------------------------*/ -/*------------ARB_MULTITEXTURE---------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_TEXTURE0_ARB 0x84C0 -#define GL_TEXTURE1_ARB 0x84C1 -#define GL_TEXTURE2_ARB 0x84C2 -#define GL_TEXTURE3_ARB 0x84C3 -#define GL_TEXTURE4_ARB 0x84C4 -#define GL_TEXTURE5_ARB 0x84C5 -#define GL_TEXTURE6_ARB 0x84C6 -#define GL_TEXTURE7_ARB 0x84C7 -#define GL_TEXTURE8_ARB 0x84C8 -#define GL_TEXTURE9_ARB 0x84C9 -#define GL_TEXTURE10_ARB 0x84CA -#define GL_TEXTURE11_ARB 0x84CB -#define GL_TEXTURE12_ARB 0x84CC -#define GL_TEXTURE13_ARB 0x84CD -#define GL_TEXTURE14_ARB 0x84CE -#define GL_TEXTURE15_ARB 0x84CF -#define GL_TEXTURE16_ARB 0x84D0 -#define GL_TEXTURE17_ARB 0x84D1 -#define GL_TEXTURE18_ARB 0x84D2 -#define GL_TEXTURE19_ARB 0x84D3 -#define GL_TEXTURE20_ARB 0x84D4 -#define GL_TEXTURE21_ARB 0x84D5 -#define GL_TEXTURE22_ARB 0x84D6 -#define GL_TEXTURE23_ARB 0x84D7 -#define GL_TEXTURE24_ARB 0x84D8 -#define GL_TEXTURE25_ARB 0x84D9 -#define GL_TEXTURE26_ARB 0x84DA -#define GL_TEXTURE27_ARB 0x84DB -#define GL_TEXTURE28_ARB 0x84DC -#define GL_TEXTURE29_ARB 0x84DD -#define GL_TEXTURE30_ARB 0x84DE -#define GL_TEXTURE31_ARB 0x84DF -#define GL_ACTIVE_TEXTURE_ARB 0x84E0 -#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 -#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 - -typedef void (APIENTRY * glActiveTextureARBPROC) (GLenum texture ); -typedef void (APIENTRY * glClientActiveTextureARBPROC) (GLenum texture ); -typedef void (APIENTRY * glMultiTexCoord1dARBPROC) (GLenum target, GLdouble s ); -typedef void (APIENTRY * glMultiTexCoord1dvARBPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord1fARBPROC) (GLenum target, GLfloat s ); -typedef void (APIENTRY * glMultiTexCoord1fvARBPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord1iARBPROC) (GLenum target, GLint s ); -typedef void (APIENTRY * glMultiTexCoord1ivARBPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord1sARBPROC) (GLenum target, GLshort s ); -typedef void (APIENTRY * glMultiTexCoord1svARBPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord2dARBPROC) (GLenum target, GLdouble s, GLdouble t ); -typedef void (APIENTRY * glMultiTexCoord2dvARBPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord2fARBPROC) (GLenum target, GLfloat s, GLfloat t ); -typedef void (APIENTRY * glMultiTexCoord2fvARBPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord2iARBPROC) (GLenum target, GLint s, GLint t ); -typedef void (APIENTRY * glMultiTexCoord2ivARBPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord2sARBPROC) (GLenum target, GLshort s, GLshort t ); -typedef void (APIENTRY * glMultiTexCoord2svARBPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord3dARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r ); -typedef void (APIENTRY * glMultiTexCoord3dvARBPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord3fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); -typedef void (APIENTRY * glMultiTexCoord3fvARBPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord3iARBPROC) (GLenum target, GLint s, GLint t, GLint r ); -typedef void (APIENTRY * glMultiTexCoord3ivARBPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord3sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r ); -typedef void (APIENTRY * glMultiTexCoord3svARBPROC) (GLenum target, const GLshort *v ); -typedef void (APIENTRY * glMultiTexCoord4dARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); -typedef void (APIENTRY * glMultiTexCoord4dvARBPROC) (GLenum target, const GLdouble *v ); -typedef void (APIENTRY * glMultiTexCoord4fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -typedef void (APIENTRY * glMultiTexCoord4fvARBPROC) (GLenum target, const GLfloat *v ); -typedef void (APIENTRY * glMultiTexCoord4iARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q ); -typedef void (APIENTRY * glMultiTexCoord4ivARBPROC) (GLenum target, const GLint *v ); -typedef void (APIENTRY * glMultiTexCoord4sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); -typedef void (APIENTRY * glMultiTexCoord4svARBPROC) (GLenum target, const GLshort *v ); - -extern glActiveTextureARBPROC glActiveTextureARB; -extern glClientActiveTextureARBPROC glClientActiveTextureARB; -extern glMultiTexCoord1dARBPROC glMultiTexCoord1dARB; -extern glMultiTexCoord1dvARBPROC glMultiTexCoord1dvARB; -extern glMultiTexCoord1fARBPROC glMultiTexCoord1fARB; -extern glMultiTexCoord1fvARBPROC glMultiTexCoord1fvARB; -extern glMultiTexCoord1iARBPROC glMultiTexCoord1iARB; -extern glMultiTexCoord1ivARBPROC glMultiTexCoord1ivARB; -extern glMultiTexCoord1sARBPROC glMultiTexCoord1sARB; -extern glMultiTexCoord1svARBPROC glMultiTexCoord1svARB; -extern glMultiTexCoord2dARBPROC glMultiTexCoord2dARB; -extern glMultiTexCoord2dvARBPROC glMultiTexCoord2dvARB; -extern glMultiTexCoord2fARBPROC glMultiTexCoord2fARB; -extern glMultiTexCoord2fvARBPROC glMultiTexCoord2fvARB; -extern glMultiTexCoord2iARBPROC glMultiTexCoord2iARB; -extern glMultiTexCoord2ivARBPROC glMultiTexCoord2ivARB; -extern glMultiTexCoord2sARBPROC glMultiTexCoord2sARB; -extern glMultiTexCoord2svARBPROC glMultiTexCoord2svARB; -extern glMultiTexCoord3dARBPROC glMultiTexCoord3dARB; -extern glMultiTexCoord3dvARBPROC glMultiTexCoord3dvARB; -extern glMultiTexCoord3fARBPROC glMultiTexCoord3fARB; -extern glMultiTexCoord3fvARBPROC glMultiTexCoord3fvARB; -extern glMultiTexCoord3iARBPROC glMultiTexCoord3iARB; -extern glMultiTexCoord3ivARBPROC glMultiTexCoord3ivARB; -extern glMultiTexCoord3sARBPROC glMultiTexCoord3sARB; -extern glMultiTexCoord3svARBPROC glMultiTexCoord3svARB; -extern glMultiTexCoord4dARBPROC glMultiTexCoord4dARB; -extern glMultiTexCoord4dvARBPROC glMultiTexCoord4dvARB; -extern glMultiTexCoord4fARBPROC glMultiTexCoord4fARB; -extern glMultiTexCoord4fvARBPROC glMultiTexCoord4fvARB; -extern glMultiTexCoord4iARBPROC glMultiTexCoord4iARB; -extern glMultiTexCoord4ivARBPROC glMultiTexCoord4ivARB; -extern glMultiTexCoord4sARBPROC glMultiTexCoord4sARB; -extern glMultiTexCoord4svARBPROC glMultiTexCoord4svARB; - -/*-------------------------------------------------------------------*/ -/*------------ARB_TRANSPOSE_MATRIX-----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6 - -typedef void (APIENTRY * glLoadTransposeMatrixdARBPROC) (const GLdouble m[16] ); -typedef void (APIENTRY * glLoadTransposeMatrixfARBPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixdARBPROC) (const GLdouble m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixfARBPROC) (const GLfloat m[16] ); - -extern glLoadTransposeMatrixfARBPROC glLoadTransposeMatrixfARB; -extern glLoadTransposeMatrixdARBPROC glLoadTransposeMatrixdARB; -extern glMultTransposeMatrixfARBPROC glMultTransposeMatrixfARB; -extern glMultTransposeMatrixdARBPROC glMultTransposeMatrixdARB; - -/*-------------------------------------------------------------------*/ -/*------------ARB_TEXTURE_COMPRESSION--------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_COMPRESSED_ALPHA_ARB 0x84E9 -#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB -#define GL_COMPRESSED_INTENSITY_ARB 0x84EC -#define GL_COMPRESSED_RGB_ARB 0x84ED -#define GL_COMPRESSED_RGBA_ARB 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF -#define GL_TEXTURE_IMAGE_SIZE_ARB 0x86A0 -#define GL_TEXTURE_COMPRESSED_ARB 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3 - -typedef void (APIENTRY * glCompressedTexImage1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glGetCompressedTexImageARBPROC) (GLenum target, GLint lod, GLvoid *img ); - -extern glCompressedTexImage3DARBPROC glCompressedTexImage3DARB; -extern glCompressedTexImage2DARBPROC glCompressedTexImage2DARB; -extern glCompressedTexImage1DARBPROC glCompressedTexImage1DARB; -extern glCompressedTexSubImage3DARBPROC glCompressedTexSubImage3DARB; -extern glCompressedTexSubImage2DARBPROC glCompressedTexSubImage2DARB; -extern glCompressedTexSubImage1DARBPROC glCompressedTexSubImage1DARB; -extern glGetCompressedTexImageARBPROC glGetCompressedTexImageARB; - /*-------------------------------------------------------------------*/ /*------------ARB_CUBE_MAP-------------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3095,19 +2670,6 @@ extern glGetCompressedTexImageARBPROC glGetCompressedTexImageARB; #define GL_DEPTH_COMPONENT24_SGIX 0x81A6 #define GL_DEPTH_COMPONENT32_SGIX 0x81A7 -/*-------------------------------------------------------------------*/ -/*------------EXT_COMPILED_VERTEX_ARRAY------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8 -#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9 - -typedef void (APIENTRY * glLockArraysEXTPROC) (GLint first, GLsizei count); -typedef void (APIENTRY * glUnlockArraysEXTPROC) (); - -extern glLockArraysEXTPROC glLockArraysEXT; -extern glUnlockArraysEXTPROC glUnlockArraysEXT; - /*-------------------------------------------------------------------*/ /*------------ARB_TEXTURE_ENV_COMBINE--------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3151,220 +2713,12 @@ extern glUnlockArraysEXTPROC glUnlockArraysEXT; /*------------ARB_TEXTURE_ENV_ADD------------------------------------*/ /*-------------------------------------------------------------------*/ -/*-------------------------------------------------------------------*/ -/*------------EXT_SECONDARY_COLOR------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_COLOR_SUM_EXT 0x8458 -#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459 -#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A -#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B -#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C -#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D -#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E - -typedef void (APIENTRY * glSecondaryColor3bEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (APIENTRY * glSecondaryColor3bvEXTPROC) (const GLbyte *v); -typedef void (APIENTRY * glSecondaryColor3dEXTPROC) (GLdouble red, GLdouble green, GLdouble blue); -typedef void (APIENTRY * glSecondaryColor3dvEXTPROC) (const GLdouble *v); -typedef void (APIENTRY * glSecondaryColor3fEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (APIENTRY * glSecondaryColor3fvEXTPROC) (const GLfloat *v); -typedef void (APIENTRY * glSecondaryColor3iEXTPROC) (GLint red, GLint green, GLint blue); -typedef void (APIENTRY * glSecondaryColor3ivEXTPROC) (const GLint *v); -typedef void (APIENTRY * glSecondaryColor3sEXTPROC) (GLshort red, GLshort green, GLshort blue); -typedef void (APIENTRY * glSecondaryColor3svEXTPROC) (const GLshort *v); -typedef void (APIENTRY * glSecondaryColor3ubEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (APIENTRY * glSecondaryColor3ubvEXTPROC) (const GLubyte *v); -typedef void (APIENTRY * glSecondaryColor3uiEXTPROC) (GLuint red, GLuint green, GLuint blue); -typedef void (APIENTRY * glSecondaryColor3uivEXTPROC) (const GLuint *v); -typedef void (APIENTRY * glSecondaryColor3usEXTPROC) (GLushort red, GLushort green, GLushort blue); -typedef void (APIENTRY * glSecondaryColor3usvEXTPROC) (const GLushort *v); -typedef void (APIENTRY * glSecondaryColorPointerEXTPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); - -extern glSecondaryColor3bEXTPROC glSecondaryColor3bEXT; -extern glSecondaryColor3bvEXTPROC glSecondaryColor3bvEXT; -extern glSecondaryColor3dEXTPROC glSecondaryColor3dEXT; -extern glSecondaryColor3dvEXTPROC glSecondaryColor3dvEXT; -extern glSecondaryColor3fEXTPROC glSecondaryColor3fEXT; -extern glSecondaryColor3fvEXTPROC glSecondaryColor3fvEXT; -extern glSecondaryColor3iEXTPROC glSecondaryColor3iEXT; -extern glSecondaryColor3ivEXTPROC glSecondaryColor3ivEXT; -extern glSecondaryColor3sEXTPROC glSecondaryColor3sEXT; -extern glSecondaryColor3svEXTPROC glSecondaryColor3svEXT; -extern glSecondaryColor3ubEXTPROC glSecondaryColor3ubEXT; -extern glSecondaryColor3ubvEXTPROC glSecondaryColor3ubvEXT; -extern glSecondaryColor3uiEXTPROC glSecondaryColor3uiEXT; -extern glSecondaryColor3uivEXTPROC glSecondaryColor3uivEXT; -extern glSecondaryColor3usEXTPROC glSecondaryColor3usEXT; -extern glSecondaryColor3usvEXTPROC glSecondaryColor3usvEXT; -extern glSecondaryColorPointerEXTPROC glSecondaryColorPointerEXT; - -/*-------------------------------------------------------------------*/ -/*------------EXT_FOG_COORD------------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450 -#define GL_FOG_COORDINATE_EXT 0x8451 -#define GL_FRAGMENT_DEPTH_EXT 0x8452 -#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453 -#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454 -#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455 -#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456 -#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457 - -typedef void (APIENTRY * glFogCoordfEXTPROC) (GLfloat coord); -typedef void (APIENTRY * glFogCoordfvEXTPROC) (const GLfloat *coord); -typedef void (APIENTRY * glFogCoorddEXTPROC) (GLdouble coord); -typedef void (APIENTRY * glFogCoorddvEXTPROC) (const GLdouble *coord); -typedef void (APIENTRY * glFogCoordPointerEXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); - -extern glFogCoordfEXTPROC glFogCoordfEXT; -extern glFogCoordfvEXTPROC glFogCoordfvEXT; -extern glFogCoorddEXTPROC glFogCoorddEXT; -extern glFogCoorddvEXTPROC glFogCoorddvEXT; -extern glFogCoordPointerEXTPROC glFogCoordPointerEXT; - -/*-------------------------------------------------------------------*/ -/*------------NV_VERTEX_ARRAY_RANGE----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_VERTEX_ARRAY_RANGE_NV 0x851D -#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E -#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F -#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520 -#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521 - -typedef void (APIENTRY * glFlushVertexArrayRangeNVPROC) (void); -typedef void (APIENTRY * glVertexArrayRangeNVPROC) (GLsizei size, const GLvoid *pointer); - -extern glFlushVertexArrayRangeNVPROC glFlushVertexArrayRangeNV; -extern glVertexArrayRangeNVPROC glVertexArrayRangeNV; - -#ifdef _WIN32 - -typedef void * (APIENTRY * wglAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); -typedef void (APIENTRY * wglFreeMemoryNVPROC) (void *pointer); - -extern wglAllocateMemoryNVPROC wglAllocateMemoryNV; -extern wglFreeMemoryNVPROC wglFreeMemoryNV; - -#endif /* WIN32 */ - -#ifdef _X11 - -typedef void * (APIENTRY * glXAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); -typedef void (APIENTRY * glXFreeMemoryNVPROC) (void *pointer); - -extern glXAllocateMemoryNVPROC glXAllocateMemoryNV; -extern glXFreeMemoryNVPROC glXFreeMemoryNV; - -#endif /* X11 */ - /*-------------------------------------------------------------------*/ /*------------NV_VERTEX_ARRAY_RANGE2---------------------------------*/ /*-------------------------------------------------------------------*/ #define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533 -/*-------------------------------------------------------------------*/ -/*------------EXT_POINT_PARAMETERS-----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_POINT_SIZE_MIN_EXT 0x8126 -#define GL_POINT_SIZE_MAX_EXT 0x8127 -#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128 -#define GL_DISTANCE_ATTENUATION_EXT 0x8129 - -typedef void (APIENTRY * glPointParameterfEXTPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameterfvEXTPROC) (GLenum pname, const GLfloat *params); - -extern glPointParameterfEXTPROC glPointParameterfEXT; -extern glPointParameterfvEXTPROC glPointParameterfvEXT; - -/*-------------------------------------------------------------------*/ -/*------------NV_REGISTER_COMBINERS----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_REGISTER_COMBINERS_NV 0x8522 -#define GL_COMBINER0_NV 0x8550 -#define GL_COMBINER1_NV 0x8551 -#define GL_COMBINER2_NV 0x8552 -#define GL_COMBINER3_NV 0x8553 -#define GL_COMBINER4_NV 0x8554 -#define GL_COMBINER5_NV 0x8555 -#define GL_COMBINER6_NV 0x8556 -#define GL_COMBINER7_NV 0x8557 -#define GL_VARIABLE_A_NV 0x8523 -#define GL_VARIABLE_B_NV 0x8524 -#define GL_VARIABLE_C_NV 0x8525 -#define GL_VARIABLE_D_NV 0x8526 -#define GL_VARIABLE_E_NV 0x8527 -#define GL_VARIABLE_F_NV 0x8528 -#define GL_VARIABLE_G_NV 0x8529 -#define GL_CONSTANT_COLOR0_NV 0x852A -#define GL_CONSTANT_COLOR1_NV 0x852B -#define GL_PRIMARY_COLOR_NV 0x852C -#define GL_SECONDARY_COLOR_NV 0x852D -#define GL_SPARE0_NV 0x852E -#define GL_SPARE1_NV 0x852F -#define GL_UNSIGNED_IDENTITY_NV 0x8536 -#define GL_UNSIGNED_INVERT_NV 0x8537 -#define GL_EXPAND_NORMAL_NV 0x8538 -#define GL_EXPAND_NEGATE_NV 0x8539 -#define GL_HALF_BIAS_NORMAL_NV 0x853A -#define GL_HALF_BIAS_NEGATE_NV 0x853B -#define GL_SIGNED_IDENTITY_NV 0x853C -#define GL_SIGNED_NEGATE_NV 0x853D -#define GL_E_TIMES_F_NV 0x8531 -#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532 -#define GL_SCALE_BY_TWO_NV 0x853E -#define GL_SCALE_BY_FOUR_NV 0x853F -#define GL_SCALE_BY_ONE_HALF_NV 0x8540 -#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541 -#define GL_DISCARD_NV 0x8530 -#define GL_COMBINER_INPUT_NV 0x8542 -#define GL_COMBINER_MAPPING_NV 0x8543 -#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544 -#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545 -#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546 -#define GL_COMBINER_MUX_SUM_NV 0x8547 -#define GL_COMBINER_SCALE_NV 0x8548 -#define GL_COMBINER_BIAS_NV 0x8549 -#define GL_COMBINER_AB_OUTPUT_NV 0x854A -#define GL_COMBINER_CD_OUTPUT_NV 0x854B -#define GL_COMBINER_SUM_OUTPUT_NV 0x854C -#define GL_NUM_GENERAL_COMBINERS_NV 0x854E -#define GL_COLOR_SUM_CLAMP_NV 0x854F -#define GL_MAX_GENERAL_COMBINERS_NV 0x854D - -typedef void (APIENTRY * glCombinerParameterfvNVPROC) (GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glCombinerParameterfNVPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glCombinerParameterivNVPROC) (GLenum pname, const GLint *params); -typedef void (APIENTRY * glCombinerParameteriNVPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glCombinerInputNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (APIENTRY * glCombinerOutputNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); -typedef void (APIENTRY * glFinalCombinerInputNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (APIENTRY * glGetCombinerInputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetCombinerInputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetCombinerOutputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetCombinerOutputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetFinalCombinerInputParameterfvNVPROC) (GLenum variable, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetFinalCombinerInputParameterivNVPROC) (GLenum variable, GLenum pname, GLint *params); - -extern glCombinerParameterfvNVPROC glCombinerParameterfvNV; -extern glCombinerParameterfNVPROC glCombinerParameterfNV; -extern glCombinerParameterivNVPROC glCombinerParameterivNV; -extern glCombinerParameteriNVPROC glCombinerParameteriNV; -extern glCombinerInputNVPROC glCombinerInputNV; -extern glCombinerOutputNVPROC glCombinerOutputNV; -extern glFinalCombinerInputNVPROC glFinalCombinerInputNV; -extern glGetCombinerInputParameterfvNVPROC glGetCombinerInputParameterfvNV; -extern glGetCombinerInputParameterivNVPROC glGetCombinerInputParameterivNV; -extern glGetCombinerOutputParameterfvNVPROC glGetCombinerOutputParameterfvNV; -extern glGetCombinerOutputParameterivNVPROC glGetCombinerOutputParameterivNV; -extern glGetFinalCombinerInputParameterfvNVPROC glGetFinalCombinerInputParameterfvNV; -extern glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameterivNV; - /*-------------------------------------------------------------------*/ /*------------ARB_VERTEX_BUFFER_OBJECT----------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3404,30 +2758,6 @@ extern glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameter typedef int GLintptrARB; typedef unsigned int GLsizeiptrARB; -typedef void (APIENTRY * glBindBufferARBPROC) (GLenum target, GLuint buffer); -typedef void (APIENTRY * glDeleteBuffersARBPROC) (GLsizei n, const GLuint *buffers); -typedef void (APIENTRY * glGenBuffersARBPROC) (GLsizei n, GLuint *buffers); -typedef GLboolean (APIENTRY * glIsBufferARBPROC) (GLuint buffer); -typedef void (APIENTRY * glBufferDataARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage); -typedef void (APIENTRY * glBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data); -typedef void (APIENTRY * glGetBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data); -typedef void * (APIENTRY * glMapBufferARBPROC) (GLenum target, GLenum access); -typedef GLboolean (APIENTRY * glUnmapBufferARBPROC) (GLenum target); -typedef void (APIENTRY * glGetBufferParameterivARBPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetBufferPointervARBPROC) (GLenum target, GLenum pname, GLvoid **params); - -extern glBindBufferARBPROC glBindBufferARB; -extern glDeleteBuffersARBPROC glDeleteBuffersARB; -extern glGenBuffersARBPROC glGenBuffersARB; -extern glIsBufferARBPROC glIsBufferARB; -extern glBufferDataARBPROC glBufferDataARB; -extern glBufferSubDataARBPROC glBufferSubDataARB; -extern glGetBufferSubDataARBPROC glGetBufferSubDataARB; -extern glMapBufferARBPROC glMapBufferARB; -extern glUnmapBufferARBPROC glUnmapBufferARB; -extern glGetBufferParameterivARBPROC glGetBufferParameterivARB; -extern glGetBufferPointervARBPROC glGetBufferPointervARB; - /*-------------------------------------------------------------------*/ /*------------ARB_MULTISAMPLE----------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3442,10 +2772,6 @@ extern glGetBufferPointervARBPROC glGetBufferPointervARB; #define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB #define GL_MULTISAMPLE_BIT_ARB 0x20000000 -typedef void (APIENTRY * glSampleCoverageARBPROC) (GLclampf value, GLboolean invert ); - -extern glSampleCoverageARBPROC glSampleCoverageARB; - /*-------------------------------------------------------------------*/ /*------------NV_TEXTURE_SHADER--------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3569,274 +2895,6 @@ extern glSampleCoverageARBPROC glSampleCoverageARB; #define GL_NORMAL_MAP_NV 0x8511 #define GL_REFLECTION_MAP_NV 0x8512 -/*-------------------------------------------------------------------*/ -/*------------EXT_VERTEX_WEIGHTING-----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3 /* alias to GL_MODELVIEW_STACK_DEPTH */ -#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502 -#define GL_MODELVIEW0_MATRIX_EXT 0x0BA6 /* alias to GL_MODELVIEW_MATRIX */ -#define GL_MODELVIEW1_MATRIX_EXT 0x8506 -#define GL_VERTEX_WEIGHTING_EXT 0x8509 -#define GL_MODELVIEW0_EXT 0x1700 /* alias to GL_MODELVIEW */ -#define GL_MODELVIEW1_EXT 0x850A -#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B -#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C -#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D -#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E -#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F -#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510 - -typedef void (APIENTRY * glVertexWeightfEXTPROC) (GLfloat weight); -typedef void (APIENTRY * glVertexWeightfvEXTPROC) (const GLfloat *weight); -typedef void (APIENTRY * glVertexWeightPointerEXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer); - -extern glVertexWeightfEXTPROC glVertexWeightfEXT; -extern glVertexWeightfvEXTPROC glVertexWeightfvEXT; -extern glVertexWeightPointerEXTPROC glVertexWeightPointerEXT; - -/*-------------------------------------------------------------------*/ -/*------------NV_VERTEX_PROGRAM--------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_VERTEX_PROGRAM_NV 0x8620 -#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642 -#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643 -#define GL_VERTEX_STATE_PROGRAM_NV 0x8621 -#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623 -#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624 -#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625 -#define GL_CURRENT_ATTRIB_NV 0x8626 -#define GL_PROGRAM_PARAMETER_NV 0x8644 -#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645 -#define GL_PROGRAM_TARGET_NV 0x8646 -#define GL_PROGRAM_LENGTH_NV 0x8627 -#define GL_PROGRAM_RESIDENT_NV 0x8647 -#define GL_PROGRAM_STRING_NV 0x8628 -#define GL_TRACK_MATRIX_NV 0x8648 -#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649 -#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E -#define GL_MAX_TRACK_MATRICES_NV 0x862F -#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640 -#define GL_CURRENT_MATRIX_NV 0x8641 -#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A -#define GL_PROGRAM_ERROR_POSITION_NV 0x864B -#define GL_MODELVIEW_PROJECTION_NV 0x8629 -#define GL_MATRIX0_NV 0x8630 -#define GL_MATRIX1_NV 0x8631 -#define GL_MATRIX2_NV 0x8632 -#define GL_MATRIX3_NV 0x8633 -#define GL_MATRIX4_NV 0x8634 -#define GL_MATRIX5_NV 0x8635 -#define GL_MATRIX6_NV 0x8636 -#define GL_MATRIX7_NV 0x8637 -#define GL_IDENTITY_NV 0x862A -#define GL_INVERSE_NV 0x862B -#define GL_TRANSPOSE_NV 0x862C -#define GL_INVERSE_TRANSPOSE_NV 0x862D -#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650 -#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651 -#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652 -#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653 -#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654 -#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655 -#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656 -#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657 -#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658 -#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659 -#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A -#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B -#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C -#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D -#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E -#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F -#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660 -#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661 -#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662 -#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663 -#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664 -#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665 -#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666 -#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667 -#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668 -#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669 -#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A -#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B -#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C -#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D -#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E -#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F -#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670 -#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671 -#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672 -#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673 -#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674 -#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675 -#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676 -#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677 -#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678 -#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679 -#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A -#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B -#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C -#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D -#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E -#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F - -typedef void (APIENTRY * glBindProgramNVPROC) (GLenum target, GLuint id); -typedef void (APIENTRY * glDeleteProgramsNVPROC) (GLsizei n, const GLuint *ids); -typedef void (APIENTRY * glExecuteProgramNVPROC) (GLenum target, GLuint id, const GLfloat *params); -typedef void (APIENTRY * glGenProgramsNVPROC) (GLsizei n, GLuint *ids); -typedef GLboolean (APIENTRY * glAreProgramsResidentNVPROC) (GLsizei n, const GLuint *ids, GLboolean *residences); -typedef void (APIENTRY * glRequestResidentProgramsNVPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glGetProgramParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetProgramParameterdvNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble *params); -typedef void (APIENTRY * glGetProgramivNVPROC) (GLuint id, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetProgramStringNVPROC) (GLuint id, GLenum pname, GLubyte *program); -typedef void (APIENTRY * glGetTrackMatrixivNVPROC) (GLenum target, GLuint address, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribdvNVPROC) (GLuint index, GLenum pname, GLdouble *params); -typedef void (APIENTRY * glGetVertexAttribfvNVPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribivNVPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribPointervNVPROC) (GLuint index, GLenum pname, GLvoid **pointer); -typedef GLboolean (APIENTRY * glIsProgramNVPROC) (GLuint id); -typedef void (APIENTRY * glLoadProgramNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte *program); -typedef void (APIENTRY * glProgramParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramParameter4dNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramParameter4dvNVPROC) (GLenum target, GLuint index, const GLdouble *params); -typedef void (APIENTRY * glProgramParameter4fvNVPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glProgramParameters4dvNVPROC) (GLenum target, GLuint index, GLuint num, const GLdouble *params); -typedef void (APIENTRY * glProgramParameters4fvNVPROC) (GLenum target, GLuint index, GLuint num, const GLfloat *params); -typedef void (APIENTRY * glTrackMatrixNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); -typedef void (APIENTRY * glVertexAttribPointerNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glVertexAttrib1sNVPROC) (GLuint index, GLshort x); -typedef void (APIENTRY * glVertexAttrib1fNVPROC) (GLuint index, GLfloat x); -typedef void (APIENTRY * glVertexAttrib1dNVPROC) (GLuint index, GLdouble x); -typedef void (APIENTRY * glVertexAttrib2sNVPROC) (GLuint index, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexAttrib2fNVPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexAttrib2dNVPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (APIENTRY * glVertexAttrib3sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexAttrib3fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexAttrib3dNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glVertexAttrib4sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexAttrib4fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexAttrib4dNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glVertexAttrib4ubNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (APIENTRY * glVertexAttrib1svNVPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib1fvNVPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib1dvNVPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib2svNVPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib2fvNVPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2dvNVPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib3svNVPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib3fvNVPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib3dvNVPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4svNVPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4fvNVPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib4dvNVPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4ubvNVPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttribs1svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs1fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs1dvNVPROC) (GLuint index, GLsizei n, const GLdouble *v); -typedef void (APIENTRY * glVertexAttribs2svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs2fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs2dvNVPROC) (GLuint index, GLsizei n, const GLdouble *v); -typedef void (APIENTRY * glVertexAttribs3svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs3fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs3dvNVPROC) (GLuint index, GLsizei n, const GLdouble *v); -typedef void (APIENTRY * glVertexAttribs4svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs4fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs4dvNVPROC) (GLuint index, GLsizei n, const GLdouble *v); -typedef void (APIENTRY * glVertexAttribs4ubvNVPROC) (GLuint index, GLsizei n, const GLubyte *v); - -extern glBindProgramNVPROC glBindProgramNV; -extern glDeleteProgramsNVPROC glDeleteProgramsNV; -extern glExecuteProgramNVPROC glExecuteProgramNV; -extern glGenProgramsNVPROC glGenProgramsNV; -extern glAreProgramsResidentNVPROC glAreProgramsResidentNV; -extern glRequestResidentProgramsNVPROC glRequestResidentProgramsNV; -extern glGetProgramParameterfvNVPROC glGetProgramParameterfvNV; -extern glGetProgramParameterdvNVPROC glGetProgramParameterdvNV; -extern glGetProgramivNVPROC glGetProgramivNV; -extern glGetProgramStringNVPROC glGetProgramStringNV; -extern glGetTrackMatrixivNVPROC glGetTrackMatrixivNV; -extern glGetVertexAttribdvNVPROC glGetVertexAttribdvNV; -extern glGetVertexAttribfvNVPROC glGetVertexAttribfvNV; -extern glGetVertexAttribivNVPROC glGetVertexAttribivNV; -extern glGetVertexAttribPointervNVPROC glGetVertexAttribPointervNV; -extern glIsProgramNVPROC glIsProgramNV; -extern glLoadProgramNVPROC glLoadProgramNV; -extern glProgramParameter4fNVPROC glProgramParameter4fNV; -extern glProgramParameter4dNVPROC glProgramParameter4dNV; -extern glProgramParameter4dvNVPROC glProgramParameter4dvNV; -extern glProgramParameter4fvNVPROC glProgramParameter4fvNV; -extern glProgramParameters4dvNVPROC glProgramParameters4dvNV; -extern glProgramParameters4fvNVPROC glProgramParameters4fvNV; -extern glTrackMatrixNVPROC glTrackMatrixNV; -extern glVertexAttribPointerNVPROC glVertexAttribPointerNV; -extern glVertexAttrib1sNVPROC glVertexAttrib1sNV; -extern glVertexAttrib1fNVPROC glVertexAttrib1fNV; -extern glVertexAttrib1dNVPROC glVertexAttrib1dNV; -extern glVertexAttrib2sNVPROC glVertexAttrib2sNV; -extern glVertexAttrib2fNVPROC glVertexAttrib2fNV; -extern glVertexAttrib2dNVPROC glVertexAttrib2dNV; -extern glVertexAttrib3sNVPROC glVertexAttrib3sNV; -extern glVertexAttrib3fNVPROC glVertexAttrib3fNV; -extern glVertexAttrib3dNVPROC glVertexAttrib3dNV; -extern glVertexAttrib4sNVPROC glVertexAttrib4sNV; -extern glVertexAttrib4fNVPROC glVertexAttrib4fNV; -extern glVertexAttrib4dNVPROC glVertexAttrib4dNV; -extern glVertexAttrib4ubNVPROC glVertexAttrib4ubNV; -extern glVertexAttrib1svNVPROC glVertexAttrib1svNV; -extern glVertexAttrib1fvNVPROC glVertexAttrib1fvNV; -extern glVertexAttrib1dvNVPROC glVertexAttrib1dvNV; -extern glVertexAttrib2svNVPROC glVertexAttrib2svNV; -extern glVertexAttrib2fvNVPROC glVertexAttrib2fvNV; -extern glVertexAttrib2dvNVPROC glVertexAttrib2dvNV; -extern glVertexAttrib3svNVPROC glVertexAttrib3svNV; -extern glVertexAttrib3fvNVPROC glVertexAttrib3fvNV; -extern glVertexAttrib3dvNVPROC glVertexAttrib3dvNV; -extern glVertexAttrib4svNVPROC glVertexAttrib4svNV; -extern glVertexAttrib4fvNVPROC glVertexAttrib4fvNV; -extern glVertexAttrib4dvNVPROC glVertexAttrib4dvNV; -extern glVertexAttrib4ubvNVPROC glVertexAttrib4ubvNV; -extern glVertexAttribs1svNVPROC glVertexAttribs1svNV; -extern glVertexAttribs1fvNVPROC glVertexAttribs1fvNV; -extern glVertexAttribs1dvNVPROC glVertexAttribs1dvNV; -extern glVertexAttribs2svNVPROC glVertexAttribs2svNV; -extern glVertexAttribs2fvNVPROC glVertexAttribs2fvNV; -extern glVertexAttribs2dvNVPROC glVertexAttribs2dvNV; -extern glVertexAttribs3svNVPROC glVertexAttribs3svNV; -extern glVertexAttribs3fvNVPROC glVertexAttribs3fvNV; -extern glVertexAttribs3dvNVPROC glVertexAttribs3dvNV; -extern glVertexAttribs4svNVPROC glVertexAttribs4svNV; -extern glVertexAttribs4fvNVPROC glVertexAttribs4fvNV; -extern glVertexAttribs4dvNVPROC glVertexAttribs4dvNV; -extern glVertexAttribs4ubvNVPROC glVertexAttribs4ubvNV; - -/*-------------------------------------------------------------------*/ -/*------------NV_FENCE-----------------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_ALL_COMPLETED_NV 0x84F2 -#define GL_FENCE_STATUS_NV 0x84F3 -#define GL_FENCE_CONDITION_NV 0x84F4 - -typedef void (APIENTRY * glGenFencesNVPROC) (GLsizei n, GLuint *fences); -typedef void (APIENTRY * glDeleteFencesNVPROC) (GLsizei n, const GLuint *fences); -typedef void (APIENTRY * glSetFenceNVPROC) (GLuint fence, GLenum condition); -typedef GLboolean (APIENTRY * glTestFenceNVPROC) (GLuint fence); -typedef void (APIENTRY * glFinishFenceNVPROC) (GLuint fence); -typedef GLboolean (APIENTRY * glIsFenceNVPROC) (GLuint fence); -typedef void (APIENTRY * glGetFenceivNVPROC) (GLuint fence, GLenum pname, GLint *params); - -extern glGenFencesNVPROC glGenFencesNV; -extern glDeleteFencesNVPROC glDeleteFencesNV; -extern glSetFenceNVPROC glSetFenceNV; -extern glTestFenceNVPROC glTestFenceNV; -extern glFinishFenceNVPROC glFinishFenceNV; -extern glIsFenceNVPROC glIsFenceNV; -extern glGetFenceivNVPROC glGetFenceivNV; - /*-------------------------------------------------------------------*/ /*------------NV_TEXTURE_SHADER2-------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3888,18 +2946,6 @@ extern glGetFenceivNVPROC glGetFenceivNV; #define GL_DEPTH_STENCIL_NV 0x84F9 #define GL_UNSIGNED_INT_24_8_NV 0x84FA -/*-------------------------------------------------------------------*/ -/*------------NV_REGISTER_COMBINERS2---------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_PER_STAGE_CONSTANTS_NV 0x8535 - -typedef void (APIENTRY * glCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glGetCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, GLfloat *params); - -extern glCombinerStageParameterfvNVPROC glCombinerStageParameterfvNV; -extern glGetCombinerStageParameterfvNVPROC glGetCombinerStageParameterfvNV; - /*-------------------------------------------------------------------*/ /*------------EXT_ABGR-----------------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3921,55 +2967,6 @@ extern glGetCombinerStageParameterfvNVPROC glGetCombinerStageParameterfvNV; #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD -/*-------------------------------------------------------------------*/ -/*------------NV_EVALUATORS------------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_EVAL_2D_NV 0x86C0 -#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1 -#define GL_MAP_TESSELLATION_NV 0x86C2 -#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3 -#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4 -#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5 -#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6 -#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7 -#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8 -#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9 -#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA -#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB -#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC -#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD -#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE -#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF -#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0 -#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1 -#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2 -#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3 -#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4 -#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5 -#define GL_MAX_MAP_TESSELLATION_NV 0x86D6 -#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7 - -typedef void (APIENTRY * glMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points); -typedef void (APIENTRY * glMapParameterivNVPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glMapParameterfvNVPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glGetMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points); -typedef void (APIENTRY * glGetMapParameterivNVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetMapParameterfvNVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetMapAttribParameterivNVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetMapAttribParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glEvalMapsNVPROC) (GLenum target, GLenum mode); - -extern glMapControlPointsNVPROC glMapControlPointsNV; -extern glMapParameterivNVPROC glMapParameterivNV; -extern glMapParameterfvNVPROC glMapParameterfvNV; -extern glGetMapControlPointsNVPROC glGetMapControlPointsNV; -extern glGetMapParameterivNVPROC glGetMapParameterivNV; -extern glGetMapParameterfvNVPROC glGetMapParameterfvNV; -extern glGetMapAttribParameterivNVPROC glGetMapAttribParameterivNV; -extern glGetMapAttribParameterfvNVPROC glGetMapAttribParameterfvNV; -extern glEvalMapsNVPROC glEvalMapsNV; - /*-------------------------------------------------------------------*/ /*------------NV_COPY_DEPTH_TO_COLOR---------------------------------*/ /*-------------------------------------------------------------------*/ @@ -3977,514 +2974,10 @@ extern glEvalMapsNVPROC glEvalMapsNV; #define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E #define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F -/*-------------------------------------------------------------------*/ -/*------------ATI_PN_TRIANGLES---------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_PN_TRIANGLES_ATI 0x87F0 -#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1 -#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2 -#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3 -#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4 -#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5 -#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6 -#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7 -#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8 - -typedef void (APIENTRY * glPNTrianglesiATIPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPNTrianglesfATIPROC) (GLenum pname, GLfloat param); - -extern glPNTrianglesiATIPROC glPNTrianglesiATI; -extern glPNTrianglesfATIPROC glPNTrianglesfATI; - -/*-------------------------------------------------------------------*/ -/*------------ARB_POINT_PARAMETERS-----------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_POINT_SIZE_MIN_ARB 0x8126 -#define GL_POINT_SIZE_MAX_ARB 0x8127 -#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128 -#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129 - -typedef void (APIENTRY * glPointParameterfARBPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameterfvARBPROC) (GLenum pname, GLfloat *params); - -extern glPointParameterfARBPROC glPointParameterfARB; -extern glPointParameterfvARBPROC glPointParameterfvARB; - /*-------------------------------------------------------------------*/ /*------------ARB_TEXTURE_ENV_CROSSBAR-------------------------------*/ /*-------------------------------------------------------------------*/ -/*-------------------------------------------------------------------*/ -/*------------ARB_VERTEX_BLEND---------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_MAX_VERTEX_UNITS_ARB 0x86A4 -#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5 -#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6 -#define GL_VERTEX_BLEND_ARB 0x86A7 -#define GL_CURRENT_WEIGHT_ARB 0x86A8 -#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9 -#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA -#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB -#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC -#define GL_WEIGHT_ARRAY_ARB 0x86AD -#define GL_MODELVIEW0_ARB 0x1700 -#define GL_MODELVIEW1_ARB 0x850A -#define GL_MODELVIEW2_ARB 0x8722 -#define GL_MODELVIEW3_ARB 0x8723 -#define GL_MODELVIEW4_ARB 0x8724 -#define GL_MODELVIEW5_ARB 0x8725 -#define GL_MODELVIEW6_ARB 0x8726 -#define GL_MODELVIEW7_ARB 0x8727 -#define GL_MODELVIEW8_ARB 0x8728 -#define GL_MODELVIEW9_ARB 0x8729 -#define GL_MODELVIEW10_ARB 0x872A -#define GL_MODELVIEW11_ARB 0x872B -#define GL_MODELVIEW12_ARB 0x872C -#define GL_MODELVIEW13_ARB 0x872D -#define GL_MODELVIEW14_ARB 0x872E -#define GL_MODELVIEW15_ARB 0x872F -#define GL_MODELVIEW16_ARB 0x8730 -#define GL_MODELVIEW17_ARB 0x8731 -#define GL_MODELVIEW18_ARB 0x8732 -#define GL_MODELVIEW19_ARB 0x8733 -#define GL_MODELVIEW20_ARB 0x8734 -#define GL_MODELVIEW21_ARB 0x8735 -#define GL_MODELVIEW22_ARB 0x8736 -#define GL_MODELVIEW23_ARB 0x8737 -#define GL_MODELVIEW24_ARB 0x8738 -#define GL_MODELVIEW25_ARB 0x8739 -#define GL_MODELVIEW26_ARB 0x873A -#define GL_MODELVIEW27_ARB 0x873B -#define GL_MODELVIEW28_ARB 0x873C -#define GL_MODELVIEW29_ARB 0x873D -#define GL_MODELVIEW30_ARB 0x873E -#define GL_MODELVIEW31_ARB 0x873F - -typedef void (APIENTRY * glWeightbvARBPROC) (GLint size, GLbyte *weights); -typedef void (APIENTRY * glWeightsvARBPROC) (GLint size, GLshort *weights); -typedef void (APIENTRY * glWeightivARBPROC) (GLint size, GLint *weights); -typedef void (APIENTRY * glWeightfvARBPROC) (GLint size, GLfloat *weights); -typedef void (APIENTRY * glWeightdvARBPROC) (GLint size, GLdouble *weights); -typedef void (APIENTRY * glWeightubvARBPROC) (GLint size, GLubyte *weights); -typedef void (APIENTRY * glWeightusvARBPROC) (GLint size, GLushort *weights); -typedef void (APIENTRY * glWeightuivARBPROC) (GLint size, GLuint *weights); -typedef void (APIENTRY * glWeightPointerARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glVertexBlendARBPROC) (GLint count); - -extern glWeightbvARBPROC glWeightbvARB; -extern glWeightsvARBPROC glWeightsvARB; -extern glWeightivARBPROC glWeightivARB; -extern glWeightfvARBPROC glWeightfvARB; -extern glWeightdvARBPROC glWeightdvARB; -extern glWeightubvARBPROC glWeightubvARB; -extern glWeightusvARBPROC glWeightusvARB; -extern glWeightuivARBPROC glWeightuivARB; -extern glWeightPointerARBPROC glWeightPointerARB; -extern glVertexBlendARBPROC glVertexBlendARB; - -/*-------------------------------------------------------------------*/ -/*------------EXT_MULTI_DRAW_ARRAYS----------------------------------*/ -/*-------------------------------------------------------------------*/ - -typedef void (APIENTRY * glMultiDrawArraysEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); -typedef void (APIENTRY * glMultiDrawElementsEXTPROC) (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount); - -extern glMultiDrawArraysEXTPROC glMultiDrawArraysEXT; -extern glMultiDrawElementsEXTPROC glMultiDrawElementsEXT; - -/*-------------------------------------------------------------------*/ -/*------------ARB_MATRIX_PALETTE-------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_MATRIX_PALETTE_ARB 0x8840 -#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841 -#define GL_MAX_PALETTE_MATRICES_ARB 0x8842 -#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843 -#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844 -#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845 -#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846 -#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847 -#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848 -#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849 - -typedef void (APIENTRY * glCurrentPaletteMatrixARBPROC) (GLint index); -typedef void (APIENTRY * glMatrixIndexubvARBPROC) (GLint size, GLubyte *indices); -typedef void (APIENTRY * glMatrixIndexusvARBPROC) (GLint size, GLushort *indices); -typedef void (APIENTRY * glMatrixIndexuivARBPROC) (GLint size, GLuint *indices); -typedef void (APIENTRY * glMatrixIndexPointerARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); - -extern glCurrentPaletteMatrixARBPROC glCurrentPaletteMatrixARB; -extern glMatrixIndexubvARBPROC glMatrixIndexubvARB; -extern glMatrixIndexusvARBPROC glMatrixIndexusvARB; -extern glMatrixIndexuivARBPROC glMatrixIndexuivARB; -extern glMatrixIndexPointerARBPROC glMatrixIndexPointerARB; - -/*-------------------------------------------------------------------*/ -/*------------EXT_VERTEX_SHADER--------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_VERTEX_SHADER_EXT 0x8780 -#define GL_VERTEX_SHADER_BINDING_EXT 0x8781 -#define GL_OP_INDEX_EXT 0x8782 -#define GL_OP_NEGATE_EXT 0x8783 -#define GL_OP_DOT3_EXT 0x8784 -#define GL_OP_DOT4_EXT 0x8785 -#define GL_OP_MUL_EXT 0x8786 -#define GL_OP_ADD_EXT 0x8787 -#define GL_OP_MADD_EXT 0x8788 -#define GL_OP_FRAC_EXT 0x8789 -#define GL_OP_MAX_EXT 0x878A -#define GL_OP_MIN_EXT 0x878B -#define GL_OP_SET_GE_EXT 0x878C -#define GL_OP_SET_LT_EXT 0x878D -#define GL_OP_CLAMP_EXT 0x878E -#define GL_OP_FLOOR_EXT 0x878F -#define GL_OP_ROUND_EXT 0x8790 -#define GL_OP_EXP_BASE_2_EXT 0x8791 -#define GL_OP_LOG_BASE_2_EXT 0x8792 -#define GL_OP_POWER_EXT 0x8793 -#define GL_OP_RECIP_EXT 0x8794 -#define GL_OP_RECIP_SQRT_EXT 0x8795 -#define GL_OP_SUB_EXT 0x8796 -#define GL_OP_CROSS_PRODUCT_EXT 0x8797 -#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798 -#define GL_OP_MOV_EXT 0x8799 -#define GL_OUTPUT_VERTEX_EXT 0x879A -#define GL_OUTPUT_COLOR0_EXT 0x879B -#define GL_OUTPUT_COLOR1_EXT 0x879C -#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D -#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E -#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F -#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0 -#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1 -#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2 -#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3 -#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4 -#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5 -#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6 -#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7 -#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8 -#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9 -#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA -#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB -#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC -#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD -#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE -#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF -#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0 -#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1 -#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2 -#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3 -#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4 -#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5 -#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6 -#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7 -#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8 -#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9 -#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA -#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB -#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC -#define GL_OUTPUT_FOG_EXT 0x87BD -#define GL_SCALAR_EXT 0x87BE -#define GL_VECTOR_EXT 0x87BF -#define GL_MATRIX_EXT 0x87C0 -#define GL_VARIANT_EXT 0x87C1 -#define GL_INVARIANT_EXT 0x87C2 -#define GL_LOCAL_CONSTANT_EXT 0x87C3 -#define GL_LOCAL_EXT 0x87C4 -#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5 -#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6 -#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7 -#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8 -#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9 -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD -#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE -#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF -#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0 -#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1 -#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2 -#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3 -#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4 -#define GL_X_EXT 0x87D5 -#define GL_Y_EXT 0x87D6 -#define GL_Z_EXT 0x87D7 -#define GL_W_EXT 0x87D8 -#define GL_NEGATIVE_X_EXT 0x87D9 -#define GL_NEGATIVE_Y_EXT 0x87DA -#define GL_NEGATIVE_Z_EXT 0x87DB -#define GL_NEGATIVE_W_EXT 0x87DC -#define GL_ZERO_EXT 0x87DD -#define GL_ONE_EXT 0x87DE -#define GL_NEGATIVE_ONE_EXT 0x87DF -#define GL_NORMALIZED_RANGE_EXT 0x87E0 -#define GL_FULL_RANGE_EXT 0x87E1 -#define GL_CURRENT_VERTEX_EXT 0x87E2 -#define GL_MVP_MATRIX_EXT 0x87E3 -#define GL_VARIANT_VALUE_EXT 0x87E4 -#define GL_VARIANT_DATATYPE_EXT 0x87E5 -#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6 -#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7 -#define GL_VARIANT_ARRAY_EXT 0x87E8 -#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9 -#define GL_INVARIANT_VALUE_EXT 0x87EA -#define GL_INVARIANT_DATATYPE_EXT 0x87EB -#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC -#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED - -typedef void (APIENTRY * glBeginVertexShaderEXTPROC) (); -typedef void (APIENTRY * glEndVertexShaderEXTPROC) (); -typedef void (APIENTRY * glBindVertexShaderEXTPROC) (GLuint id); -typedef GLuint (APIENTRY * glGenVertexShadersEXTPROC) (GLuint range); -typedef void (APIENTRY * glDeleteVertexShaderEXTPROC) (GLuint id); -typedef void (APIENTRY * glShaderOp1EXTPROC) (GLenum op, GLuint res, GLuint arg1); -typedef void (APIENTRY * glShaderOp2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); -typedef void (APIENTRY * glShaderOp3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); -typedef void (APIENTRY * glSwizzleEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); -typedef void (APIENTRY * glWriteMaskEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); -typedef void (APIENTRY * glInsertComponentEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef void (APIENTRY * glExtractComponentEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef GLuint (APIENTRY * glGenSymbolsEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); -typedef void (APIENTRY * glSetInvariantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); -typedef void (APIENTRY * glSetLocalConstantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); -typedef void (APIENTRY * glVariantbvEXTPROC) (GLuint id, GLbyte *addr); -typedef void (APIENTRY * glVariantsvEXTPROC) (GLuint id, GLshort *addr); -typedef void (APIENTRY * glVariantivEXTPROC) (GLuint id, GLint *addr); -typedef void (APIENTRY * glVariantfvEXTPROC) (GLuint id, GLfloat *addr); -typedef void (APIENTRY * glVariantdvEXTPROC) (GLuint id, GLdouble *addr); -typedef void (APIENTRY * glVariantubvEXTPROC) (GLuint id, GLubyte *addr); -typedef void (APIENTRY * glVariantusvEXTPROC) (GLuint id, GLushort *addr); -typedef void (APIENTRY * glVariantuivEXTPROC) (GLuint id, GLuint *addr); -typedef void (APIENTRY * glVariantPointerEXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid *addr); -typedef void (APIENTRY * glEnableVariantClientStateEXTPROC) (GLuint id); -typedef void (APIENTRY * glDisableVariantClientStateEXTPROC) (GLuint id); -typedef GLuint (APIENTRY * glBindLightParameterEXTPROC) (GLenum light, GLenum value); -typedef GLuint (APIENTRY * glBindMaterialParameterEXTPROC) (GLenum face, GLenum value); -typedef GLuint (APIENTRY * glBindTexGenParameterEXTPROC) (GLenum unit, GLenum coord, GLenum value); -typedef GLuint (APIENTRY * glBindTextureUnitParameterEXTPROC) (GLenum unit, GLenum value); -typedef GLuint (APIENTRY * glBindParameterEXTPROC) (GLenum value); -typedef GLboolean (APIENTRY * glIsVariantEnabledEXTPROC) (GLuint id, GLenum cap); -typedef void (APIENTRY * glGetVariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetVariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetVariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (APIENTRY * glGetVariantPointervEXTPROC) (GLuint id, GLenum value, GLvoid **data); -typedef void (APIENTRY * glGetInvariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetInvariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetInvariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (APIENTRY * glGetLocalConstantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetLocalConstantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetLocalConstantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); - -extern glBeginVertexShaderEXTPROC glBeginVertexShaderEXT; -extern glEndVertexShaderEXTPROC glEndVertexShaderEXT; -extern glBindVertexShaderEXTPROC glBindVertexShaderEXT; -extern glGenVertexShadersEXTPROC glGenVertexShadersEXT; -extern glDeleteVertexShaderEXTPROC glDeleteVertexShaderEXT; -extern glShaderOp1EXTPROC glShaderOp1EXT; -extern glShaderOp2EXTPROC glShaderOp2EXT; -extern glShaderOp3EXTPROC glShaderOp3EXT; -extern glSwizzleEXTPROC glSwizzleEXT; -extern glWriteMaskEXTPROC glWriteMaskEXT; -extern glInsertComponentEXTPROC glInsertComponentEXT; -extern glExtractComponentEXTPROC glExtractComponentEXT; -extern glGenSymbolsEXTPROC glGenSymbolsEXT; -extern glSetInvariantEXTPROC glSetInvariantEXT; -extern glSetLocalConstantEXTPROC glSetLocalConstantEXT; -extern glVariantbvEXTPROC glVariantbvEXT; -extern glVariantsvEXTPROC glVariantsvEXT; -extern glVariantivEXTPROC glVariantivEXT; -extern glVariantfvEXTPROC glVariantfvEXT; -extern glVariantdvEXTPROC glVariantdvEXT; -extern glVariantubvEXTPROC glVariantubvEXT; -extern glVariantusvEXTPROC glVariantusvEXT; -extern glVariantuivEXTPROC glVariantuivEXT; -extern glVariantPointerEXTPROC glVariantPointerEXT; -extern glEnableVariantClientStateEXTPROC glEnableVariantClientStateEXT; -extern glDisableVariantClientStateEXTPROC glDisableVariantClientStateEXT; -extern glBindLightParameterEXTPROC glBindLightParameterEXT; -extern glBindMaterialParameterEXTPROC glBindMaterialParameterEXT; -extern glBindTexGenParameterEXTPROC glBindTexGenParameterEXT; -extern glBindTextureUnitParameterEXTPROC glBindTextureUnitParameterEXT; -extern glBindParameterEXTPROC glBindParameterEXT; -extern glIsVariantEnabledEXTPROC glIsVariantEnabledEXT; -extern glGetVariantBooleanvEXTPROC glGetVariantBooleanvEXT; -extern glGetVariantIntegervEXTPROC glGetVariantIntegervEXT; -extern glGetVariantFloatvEXTPROC glGetVariantFloatvEXT; -extern glGetVariantPointervEXTPROC glGetVariantPointervEXT; -extern glGetInvariantBooleanvEXTPROC glGetInvariantBooleanvEXT; -extern glGetInvariantIntegervEXTPROC glGetInvariantIntegervEXT; -extern glGetInvariantFloatvEXTPROC glGetInvariantFloatvEXT; -extern glGetLocalConstantBooleanvEXTPROC glGetLocalConstantBooleanvEXT; -extern glGetLocalConstantIntegervEXTPROC glGetLocalConstantIntegervEXT; -extern glGetLocalConstantFloatvEXTPROC glGetLocalConstantFloatvEXT; - -/*-------------------------------------------------------------------*/ -/*------------ATI_ENVMAP_BUMPMAP-------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_BUMP_ROT_MATRIX_ATI 0x8775 -#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776 -#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777 -#define GL_BUMP_TEX_UNITS_ATI 0x8778 -#define GL_DUDV_ATI 0x8779 -#define GL_DU8DV8_ATI 0x877A -#define GL_BUMP_ENVMAP_ATI 0x877B -#define GL_BUMP_TARGET_ATI 0x877C - -typedef void (APIENTRY * glTexBumpParameterivATIPROC) (GLenum pname, GLint *param); -typedef void (APIENTRY * glTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); -typedef void (APIENTRY * glGetTexBumpParameterivATIPROC) (GLenum pname, GLint *param); -typedef void (APIENTRY * glGetTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); - -extern glTexBumpParameterivATIPROC glTexBumpParameterivATI; -extern glTexBumpParameterfvATIPROC glTexBumpParameterfvATI; -extern glGetTexBumpParameterivATIPROC glGetTexBumpParameterivATI; -extern glGetTexBumpParameterfvATIPROC glGetTexBumpParameterfvATI; - -/*-------------------------------------------------------------------*/ -/*------------ATI_FRAGMENT_SHADER------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_FRAGMENT_SHADER_ATI 0x8920 -#define GL_REG_0_ATI 0x8921 -#define GL_REG_1_ATI 0x8922 -#define GL_REG_2_ATI 0x8923 -#define GL_REG_3_ATI 0x8924 -#define GL_REG_4_ATI 0x8925 -#define GL_REG_5_ATI 0x8926 -#define GL_REG_6_ATI 0x8927 -#define GL_REG_7_ATI 0x8928 -#define GL_REG_8_ATI 0x8929 -#define GL_REG_9_ATI 0x892A -#define GL_REG_10_ATI 0x892B -#define GL_REG_11_ATI 0x892C -#define GL_REG_12_ATI 0x892D -#define GL_REG_13_ATI 0x892E -#define GL_REG_14_ATI 0x892F -#define GL_REG_15_ATI 0x8930 -#define GL_REG_16_ATI 0x8931 -#define GL_REG_17_ATI 0x8932 -#define GL_REG_18_ATI 0x8933 -#define GL_REG_19_ATI 0x8934 -#define GL_REG_20_ATI 0x8935 -#define GL_REG_21_ATI 0x8936 -#define GL_REG_22_ATI 0x8937 -#define GL_REG_23_ATI 0x8938 -#define GL_REG_24_ATI 0x8939 -#define GL_REG_25_ATI 0x893A -#define GL_REG_26_ATI 0x893B -#define GL_REG_27_ATI 0x893C -#define GL_REG_28_ATI 0x893D -#define GL_REG_29_ATI 0x893E -#define GL_REG_30_ATI 0x893F -#define GL_REG_31_ATI 0x8940 -#define GL_CON_0_ATI 0x8941 -#define GL_CON_1_ATI 0x8942 -#define GL_CON_2_ATI 0x8943 -#define GL_CON_3_ATI 0x8944 -#define GL_CON_4_ATI 0x8945 -#define GL_CON_5_ATI 0x8946 -#define GL_CON_6_ATI 0x8947 -#define GL_CON_7_ATI 0x8948 -#define GL_CON_8_ATI 0x8949 -#define GL_CON_9_ATI 0x894A -#define GL_CON_10_ATI 0x894B -#define GL_CON_11_ATI 0x894C -#define GL_CON_12_ATI 0x894D -#define GL_CON_13_ATI 0x894E -#define GL_CON_14_ATI 0x894F -#define GL_CON_15_ATI 0x8950 -#define GL_CON_16_ATI 0x8951 -#define GL_CON_17_ATI 0x8952 -#define GL_CON_18_ATI 0x8953 -#define GL_CON_19_ATI 0x8954 -#define GL_CON_20_ATI 0x8955 -#define GL_CON_21_ATI 0x8956 -#define GL_CON_22_ATI 0x8957 -#define GL_CON_23_ATI 0x8958 -#define GL_CON_24_ATI 0x8959 -#define GL_CON_25_ATI 0x895A -#define GL_CON_26_ATI 0x895B -#define GL_CON_27_ATI 0x895C -#define GL_CON_28_ATI 0x895D -#define GL_CON_29_ATI 0x895E -#define GL_CON_30_ATI 0x895F -#define GL_CON_31_ATI 0x8960 -#define GL_MOV_ATI 0x8961 -#define GL_ADD_ATI 0x8963 -#define GL_MUL_ATI 0x8964 -#define GL_SUB_ATI 0x8965 -#define GL_DOT3_ATI 0x8966 -#define GL_DOT4_ATI 0x8967 -#define GL_MAD_ATI 0x8968 -#define GL_LERP_ATI 0x8969 -#define GL_CND_ATI 0x896A -#define GL_CND0_ATI 0x896B -#define GL_DOT2_ADD_ATI 0x896C -#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D -#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E -#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F -#define GL_NUM_PASSES_ATI 0x8970 -#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971 -#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972 -#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973 -#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974 -#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975 -#define GL_SWIZZLE_STR_ATI 0x8976 -#define GL_SWIZZLE_STQ_ATI 0x8977 -#define GL_SWIZZLE_STR_DR_ATI 0x8978 -#define GL_SWIZZLE_STQ_DQ_ATI 0x8979 -#define GL_SWIZZLE_STRQ_ATI 0x897A -#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B -#define GL_RED_BIT_ATI 0x00000001 -#define GL_GREEN_BIT_ATI 0x00000002 -#define GL_BLUE_BIT_ATI 0x00000004 -#define GL_2X_BIT_ATI 0x00000001 -#define GL_4X_BIT_ATI 0x00000002 -#define GL_8X_BIT_ATI 0x00000004 -#define GL_HALF_BIT_ATI 0x00000008 -#define GL_QUARTER_BIT_ATI 0x00000010 -#define GL_EIGHTH_BIT_ATI 0x00000020 -#define GL_SATURATE_BIT_ATI 0x00000040 -#define GL_COMP_BIT_ATI 0x00000002 -#define GL_NEGATE_BIT_ATI 0x00000004 -#define GL_BIAS_BIT_ATI 0x00000008 - -typedef GLuint (APIENTRY * glGenFragmentShadersATIPROC) (GLuint range); -typedef void (APIENTRY * glBindFragmentShaderATIPROC) (GLuint id); -typedef void (APIENTRY * glDeleteFragmentShaderATIPROC) (GLuint id); -typedef void (APIENTRY * glBeginFragmentShaderATIPROC) (GLvoid); -typedef void (APIENTRY * glEndFragmentShaderATIPROC) (GLvoid); -typedef void (APIENTRY * glPassTexCoordATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); -typedef void (APIENTRY * glSampleMapATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); -typedef void (APIENTRY * glColorFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (APIENTRY * glColorFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (APIENTRY * glColorFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (APIENTRY * glAlphaFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (APIENTRY * glAlphaFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (APIENTRY * glAlphaFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (APIENTRY * glSetFragmentShaderConstantATIPROC) (GLuint dst, const GLfloat *value); - -extern glGenFragmentShadersATIPROC glGenFragmentShadersATI; -extern glBindFragmentShaderATIPROC glBindFragmentShaderATI; -extern glDeleteFragmentShaderATIPROC glDeleteFragmentShaderATI; -extern glBeginFragmentShaderATIPROC glBeginFragmentShaderATI; -extern glEndFragmentShaderATIPROC glEndFragmentShaderATI; -extern glPassTexCoordATIPROC glPassTexCoordATI; -extern glSampleMapATIPROC glSampleMapATI; -extern glColorFragmentOp1ATIPROC glColorFragmentOp1ATI; -extern glColorFragmentOp2ATIPROC glColorFragmentOp2ATI; -extern glColorFragmentOp3ATIPROC glColorFragmentOp3ATI; -extern glAlphaFragmentOp1ATIPROC glAlphaFragmentOp1ATI; -extern glAlphaFragmentOp2ATIPROC glAlphaFragmentOp2ATI; -extern glAlphaFragmentOp3ATIPROC glAlphaFragmentOp3ATI; -extern glSetFragmentShaderConstantATIPROC glSetFragmentShaderConstantATI; - /*-------------------------------------------------------------------*/ /*------------ATI_TEXTURE_MIRROR_ONCE--------------------------------*/ /*-------------------------------------------------------------------*/ @@ -4492,168 +2985,6 @@ extern glSetFragmentShaderConstantATIPROC glSetFragmentShaderConstantATI; #define GL_MIRROR_CLAMP_ATI 0x8742 #define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743 -/*-------------------------------------------------------------------*/ -/*------------ATI_ELEMENT_ARRAY--------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_ELEMENT_ARRAY_ATI 0x8768 -#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769 -#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A - -typedef void (APIENTRY * glElementPointerATIPROC) (GLenum type, const GLvoid *pointer); -typedef void (APIENTRY * glDrawElementArrayATIPROC) (GLenum mode, GLsizei count); -typedef void (APIENTRY * glDrawRangeElementArrayATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); - -extern glElementPointerATIPROC glElementPointerATI; -extern glDrawElementArrayATIPROC glDrawElementArrayATI; -extern glDrawRangeElementArrayATIPROC glDrawRangeElementArrayATI; - -/*-------------------------------------------------------------------*/ -/*------------ATI_VERTEX_STREAMS-------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_MAX_VERTEX_STREAMS_ATI 0x876B -#define GL_VERTEX_SOURCE_ATI 0x876C -#define GL_VERTEX_STREAM0_ATI 0x876D -#define GL_VERTEX_STREAM1_ATI 0x876E -#define GL_VERTEX_STREAM2_ATI 0x876F -#define GL_VERTEX_STREAM3_ATI 0x8770 -#define GL_VERTEX_STREAM4_ATI 0x8771 -#define GL_VERTEX_STREAM5_ATI 0x8772 -#define GL_VERTEX_STREAM6_ATI 0x8773 -#define GL_VERTEX_STREAM7_ATI 0x8774 - -typedef void (APIENTRY * glClientActiveVertexStreamATIPROC) (GLenum stream); -typedef void (APIENTRY * glVertexBlendEnviATIPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glVertexBlendEnvfATIPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glVertexStream1sATIPROC) (GLenum stream, GLshort x); -typedef void (APIENTRY * glVertexStream1svATIPROC) (GLenum stream, const GLshort *v); -typedef void (APIENTRY * glVertexStream1iATIPROC) (GLenum stream, GLint x); -typedef void (APIENTRY * glVertexStream1ivATIPROC) (GLenum stream, const GLint *v); -typedef void (APIENTRY * glVertexStream1fATIPROC) (GLenum stream, GLfloat x); -typedef void (APIENTRY * glVertexStream1fvATIPROC) (GLenum stream, const GLfloat *v); -typedef void (APIENTRY * glVertexStream1dATIPROC) (GLenum stream, GLdouble x); -typedef void (APIENTRY * glVertexStream1dvATIPROC) (GLenum stream, const GLdouble *v); -typedef void (APIENTRY * glVertexStream2sATIPROC) (GLenum stream, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexStream2svATIPROC) (GLenum stream, const GLshort *v); -typedef void (APIENTRY * glVertexStream2iATIPROC) (GLenum stream, GLint x, GLint y); -typedef void (APIENTRY * glVertexStream2ivATIPROC) (GLenum stream, const GLint *v); -typedef void (APIENTRY * glVertexStream2fATIPROC) (GLenum stream, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexStream2fvATIPROC) (GLenum stream, const GLfloat *v); -typedef void (APIENTRY * glVertexStream2dATIPROC) (GLenum stream, GLdouble x, GLdouble y); -typedef void (APIENTRY * glVertexStream2dvATIPROC) (GLenum stream, const GLdouble *v); -typedef void (APIENTRY * glVertexStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexStream3svATIPROC) (GLenum stream, const GLshort *v); -typedef void (APIENTRY * glVertexStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (APIENTRY * glVertexStream3ivATIPROC) (GLenum stream, const GLint *v); -typedef void (APIENTRY * glVertexStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexStream3fvATIPROC) (GLenum stream, const GLfloat *v); -typedef void (APIENTRY * glVertexStream3dATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glVertexStream3dvATIPROC) (GLenum stream, const GLdouble *v); -typedef void (APIENTRY * glVertexStream4sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexStream4svATIPROC) (GLenum stream, const GLshort *v); -typedef void (APIENTRY * glVertexStream4iATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); -typedef void (APIENTRY * glVertexStream4ivATIPROC) (GLenum stream, const GLint *v); -typedef void (APIENTRY * glVertexStream4fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexStream4fvATIPROC) (GLenum stream, const GLfloat *v); -typedef void (APIENTRY * glVertexStream4dATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glVertexStream4dvATIPROC) (GLenum stream, const GLdouble *v); -typedef void (APIENTRY * glNormalStream3bATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); -typedef void (APIENTRY * glNormalStream3bvATIPROC) (GLenum stream, const GLbyte *v); -typedef void (APIENTRY * glNormalStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glNormalStream3svATIPROC) (GLenum stream, const GLshort *v); -typedef void (APIENTRY * glNormalStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (APIENTRY * glNormalStream3ivATIPROC) (GLenum stream, const GLint *v); -typedef void (APIENTRY * glNormalStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glNormalStream3fvATIPROC) (GLenum stream, const GLfloat *v); -typedef void (APIENTRY * glNormalStream3dATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glNormalStream3dvATIPROC) (GLenum stream, const GLdouble *v); - - -extern glClientActiveVertexStreamATIPROC glClientActiveVertexStreamATI; -extern glVertexBlendEnviATIPROC glVertexBlendEnviATI; -extern glVertexBlendEnvfATIPROC glVertexBlendEnvfATI; -extern glVertexStream1sATIPROC glVertexStream1sATI; -extern glVertexStream1svATIPROC glVertexStream1svATI; -extern glVertexStream1iATIPROC glVertexStream1iATI; -extern glVertexStream1ivATIPROC glVertexStream1ivATI; -extern glVertexStream1fATIPROC glVertexStream1fATI; -extern glVertexStream1fvATIPROC glVertexStream1fvATI; -extern glVertexStream1dATIPROC glVertexStream1dATI; -extern glVertexStream1dvATIPROC glVertexStream1dvATI; -extern glVertexStream2sATIPROC glVertexStream2sATI; -extern glVertexStream2svATIPROC glVertexStream2svATI; -extern glVertexStream2iATIPROC glVertexStream2iATI; -extern glVertexStream2ivATIPROC glVertexStream2ivATI; -extern glVertexStream2fATIPROC glVertexStream2fATI; -extern glVertexStream2fvATIPROC glVertexStream2fvATI; -extern glVertexStream2dATIPROC glVertexStream2dATI; -extern glVertexStream2dvATIPROC glVertexStream2dvATI; -extern glVertexStream3sATIPROC glVertexStream3sATI; -extern glVertexStream3svATIPROC glVertexStream3svATI; -extern glVertexStream3iATIPROC glVertexStream3iATI; -extern glVertexStream3ivATIPROC glVertexStream3ivATI; -extern glVertexStream3fATIPROC glVertexStream3fATI; -extern glVertexStream3fvATIPROC glVertexStream3fvATI; -extern glVertexStream3dATIPROC glVertexStream3dATI; -extern glVertexStream3dvATIPROC glVertexStream3dvATI; -extern glVertexStream4sATIPROC glVertexStream4sATI; -extern glVertexStream4svATIPROC glVertexStream4svATI; -extern glVertexStream4iATIPROC glVertexStream4iATI; -extern glVertexStream4ivATIPROC glVertexStream4ivATI; -extern glVertexStream4fATIPROC glVertexStream4fATI; -extern glVertexStream4fvATIPROC glVertexStream4fvATI; -extern glVertexStream4dATIPROC glVertexStream4dATI; -extern glVertexStream4dvATIPROC glVertexStream4dvATI; -extern glNormalStream3bATIPROC glNormalStream3bATI; -extern glNormalStream3bvATIPROC glNormalStream3bvATI; -extern glNormalStream3sATIPROC glNormalStream3sATI; -extern glNormalStream3svATIPROC glNormalStream3svATI; -extern glNormalStream3iATIPROC glNormalStream3iATI; -extern glNormalStream3ivATIPROC glNormalStream3ivATI; -extern glNormalStream3fATIPROC glNormalStream3fATI; -extern glNormalStream3fvATIPROC glNormalStream3fvATI; -extern glNormalStream3dATIPROC glNormalStream3dATI; -extern glNormalStream3dvATIPROC glNormalStream3dvATI; - -/*-------------------------------------------------------------------*/ -/*------------ATI_VERTEX_ARRAY_OBJECT--------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_STATIC_ATI 0x8760 -#define GL_DYNAMIC_ATI 0x8761 -#define GL_PRESERVE_ATI 0x8762 -#define GL_DISCARD_ATI 0x8763 -#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764 -#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765 -#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766 -#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767 - -typedef GLuint (APIENTRY * glNewObjectBufferATIPROC) (GLsizei size, const GLvoid *pointer, GLenum usage); -typedef GLboolean (APIENTRY * glIsObjectBufferATIPROC) (GLuint buffer); -typedef void (APIENTRY * glUpdateObjectBufferATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve); -typedef void (APIENTRY * glGetObjectBufferfvATIPROC) (GLuint buffer, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetObjectBufferivATIPROC) (GLuint buffer, GLenum pname, GLint *params); -typedef void (APIENTRY * glFreeObjectBufferATIPROC) (GLuint buffer); -typedef void (APIENTRY * glArrayObjectATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (APIENTRY * glGetArrayObjectfvATIPROC) (GLenum array, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetArrayObjectivATIPROC) (GLenum array, GLenum pname, GLint *params); -typedef void (APIENTRY * glVariantArrayObjectATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (APIENTRY * glGetVariantArrayObjectfvATIPROC) (GLuint id, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVariantArrayObjectivATIPROC) (GLuint id, GLenum pname, GLint *params); - -extern glNewObjectBufferATIPROC glNewObjectBufferATI; -extern glIsObjectBufferATIPROC glIsObjectBufferATI; -extern glUpdateObjectBufferATIPROC glUpdateObjectBufferATI; -extern glGetObjectBufferfvATIPROC glGetObjectBufferfvATI; -extern glGetObjectBufferivATIPROC glGetObjectBufferivATI; -extern glFreeObjectBufferATIPROC glFreeObjectBufferATI; -extern glArrayObjectATIPROC glArrayObjectATI; -extern glGetArrayObjectfvATIPROC glGetArrayObjectfvATI; -extern glGetArrayObjectivATIPROC glGetArrayObjectivATI; -extern glVariantArrayObjectATIPROC glVariantArrayObjectATI; -extern glGetVariantArrayObjectfvATIPROC glGetVariantArrayObjectfvATI; -extern glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI; /*-------------------------------------------------------------------*/ /*------------HP_OCCLUSION_TEST--------------------------------------*/ @@ -4687,47 +3018,6 @@ extern glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI; #define GL_DEPTH_CLAMP_NV 0x864F -/*-------------------------------------------------------------------*/ -/*------------NV_OCCLUSION_QUERY-------------------------------------*/ -/*-------------------------------------------------------------------*/ - -/*#define GL_OCCLUSION_TEST_HP 0x8165 -#define GL_OCCLUSION_TEST_RESULT_HP 0x8166*/ -#define GL_PIXEL_COUNTER_BITS_NV 0x8864 -#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865 -#define GL_PIXEL_COUNT_NV 0x8866 -#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867 - -typedef void (APIENTRY * glGenOcclusionQueriesNVPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glDeleteOcclusionQueriesNVPROC) (GLsizei n, const GLuint *ids); -typedef GLboolean (APIENTRY * glIsOcclusionQueryNVPROC) (GLuint id); -typedef void (APIENTRY * glBeginOcclusionQueryNVPROC) (GLuint id); -typedef void (APIENTRY * glEndOcclusionQueryNVPROC) (void); -typedef void (APIENTRY * glGetOcclusionQueryivNVPROC) (GLuint id, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetOcclusionQueryuivNVPROC) (GLuint id, GLenum pname, GLuint *params); - -extern glGenOcclusionQueriesNVPROC glGenOcclusionQueriesNV; -extern glDeleteOcclusionQueriesNVPROC glDeleteOcclusionQueriesNV; -extern glIsOcclusionQueryNVPROC glIsOcclusionQueryNV; -extern glBeginOcclusionQueryNVPROC glBeginOcclusionQueryNV; -extern glEndOcclusionQueryNVPROC glEndOcclusionQueryNV; -extern glGetOcclusionQueryivNVPROC glGetOcclusionQueryivNV; -extern glGetOcclusionQueryuivNVPROC glGetOcclusionQueryuivNV; - -/*-------------------------------------------------------------------*/ -/*------------NV_POINT_SPRITE----------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_POINT_SPRITE_NV 0x8861 -#define GL_COORD_REPLACE_NV 0x8862 -#define GL_POINT_SPRITE_R_MODE_NV 0x8863 - -typedef void (APIENTRY * glPointParameteriNVPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPointParameterivNVPROC) (GLenum pname, const GLint *params); - -extern glPointParameteriNVPROC glPointParameteriNV; -extern glPointParameterivNVPROC glPointParameterivNV; - /*-------------------------------------------------------------------*/ /*------------NV_TEXTURE_SHADER3-------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -4789,54 +3079,11 @@ extern glPointParameterivNVPROC glPointParameterivNV; /*------------ARB_WINDOW_POS-----------------------------------------*/ /*-------------------------------------------------------------------*/ -typedef void (APIENTRY * glWindowPos2dARBPROC) (GLdouble x, GLdouble y); -typedef void (APIENTRY * glWindowPos2fARBPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glWindowPos2iARBPROC) (GLint x, GLint y); -typedef void (APIENTRY * glWindowPos2sARBPROC) (GLshort x, GLshort y); -typedef void (APIENTRY * glWindowPos2dvARBPROC) (const GLdouble *p); -typedef void (APIENTRY * glWindowPos2fvARBPROC) (const GLfloat *p); -typedef void (APIENTRY * glWindowPos2ivARBPROC) (const GLint *p); -typedef void (APIENTRY * glWindowPos2svARBPROC) (const GLshort *p); -typedef void (APIENTRY * glWindowPos3dARBPROC) (GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glWindowPos3fARBPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glWindowPos3iARBPROC) (GLint x, GLint y, GLint z); -typedef void (APIENTRY * glWindowPos3sARBPROC) (GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glWindowPos3dvARBPROC) (const GLdouble *p); -typedef void (APIENTRY * glWindowPos3fvARBPROC) (const GLfloat *p); -typedef void (APIENTRY * glWindowPos3ivARBPROC) (const GLint *p); -typedef void (APIENTRY * glWindowPos3svARBPROC) (const GLshort *p); - -extern glWindowPos2dARBPROC glWindowPos2dARB; -extern glWindowPos2fARBPROC glWindowPos2fARB; -extern glWindowPos2iARBPROC glWindowPos2iARB; -extern glWindowPos2sARBPROC glWindowPos2sARB; -extern glWindowPos2dvARBPROC glWindowPos2dvARB; -extern glWindowPos2fvARBPROC glWindowPos2fvARB; -extern glWindowPos2ivARBPROC glWindowPos2ivARB; -extern glWindowPos2svARBPROC glWindowPos2svARB; -extern glWindowPos3dARBPROC glWindowPos3dARB; -extern glWindowPos3fARBPROC glWindowPos3fARB; -extern glWindowPos3iARBPROC glWindowPos3iARB; -extern glWindowPos3sARBPROC glWindowPos3sARB; -extern glWindowPos3dvARBPROC glWindowPos3dvARB; -extern glWindowPos3fvARBPROC glWindowPos3fvARB; -extern glWindowPos3ivARBPROC glWindowPos3ivARB; -extern glWindowPos3svARBPROC glWindowPos3svARB; - /*-------------------------------------------------------------------*/ /*------------EXT_SHADOW_FUNCS---------------------------------------*/ /*-------------------------------------------------------------------*/ -/*-------------------------------------------------------------------*/ -/*------------EXT_draw_range_elements--------------------------------*/ -/*-------------------------------------------------------------------*/ - - -typedef void (APIENTRY * glDrawRangeElementsEXTPROC) ( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); - -extern glDrawRangeElementsEXTPROC glDrawRangeElementsEXT; - #define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8 #define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9 @@ -4849,227 +3096,9 @@ extern glDrawRangeElementsEXTPROC glDrawRangeElementsEXT; #define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2 #define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3 -/*-------------------------------------------------------------------*/ -/*------------EXT_stencil_two_side-----------------------------------*/ -/*-------------------------------------------------------------------*/ - -typedef void (APIENTRY * glActiveStencilFaceEXTPROC) (GLenum face); - -extern glActiveStencilFaceEXTPROC glActiveStencilFaceEXT; - #define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910 #define GL_ACTIVE_STENCIL_FACE_EXT 0x8911 -/*-------------------------------------------------------------------*/ -/*------------ARB_vertex_program-------------------------------------*/ -/*-------------------------------------------------------------------*/ - -typedef void (APIENTRY * glVertexAttrib1sARBPROC) (GLuint index, GLshort x); -typedef void (APIENTRY * glVertexAttrib1fARBPROC) (GLuint index, GLfloat x); -typedef void (APIENTRY * glVertexAttrib1dARBPROC) (GLuint index, GLdouble x); -typedef void (APIENTRY * glVertexAttrib2sARBPROC) (GLuint index, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexAttrib2fARBPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexAttrib2dARBPROC) (GLuint index, GLdouble x, GLdouble y); -typedef void (APIENTRY * glVertexAttrib3sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexAttrib3fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexAttrib3dARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z); -typedef void (APIENTRY * glVertexAttrib4sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexAttrib4fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexAttrib4dARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glVertexAttrib4NubARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (APIENTRY * glVertexAttrib1svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib1fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib1dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib2svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib2fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib3svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib3fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib3dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4bvARBPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4ivARBPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4ubvARBPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4usvARBPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4uivARBPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttrib4fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib4dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4NbvARBPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4NsvARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4NivARBPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4NubvARBPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4NusvARBPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4NuivARBPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttribPointerARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glEnableVertexAttribArrayARBPROC) (GLuint index); -typedef void (APIENTRY * glDisableVertexAttribArrayARBPROC) (GLuint index); -typedef void (APIENTRY * glProgramStringARBPROC) (GLenum target, GLenum format, GLsizei len, const GLvoid *string); -typedef void (APIENTRY * glBindProgramARBPROC) (GLenum target, GLuint program); -typedef void (APIENTRY * glDeleteProgramsARBPROC) (GLsizei n, const GLuint *programs); -typedef void (APIENTRY * glGenProgramsARBPROC) (GLsizei n, GLuint *programs); -typedef void (APIENTRY * glProgramEnvParameter4dARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramEnvParameter4dvARBPROC) (GLenum target, GLuint index, const GLdouble *params); -typedef void (APIENTRY * glProgramEnvParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramEnvParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glProgramLocalParameter4dARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramLocalParameter4dvARBPROC) (GLenum target, GLuint index, const GLdouble *params); -typedef void (APIENTRY * glProgramLocalParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramLocalParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glGetProgramEnvParameterdvARBPROC) (GLenum target, GLuint index, GLdouble *params); -typedef void (APIENTRY * glGetProgramEnvParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); -typedef void (APIENTRY * glGetProgramLocalParameterdvARBPROC) (GLenum target, GLuint index, GLdouble *params); -typedef void (APIENTRY * glGetProgramLocalParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); -typedef void (APIENTRY * glGetProgramivARBPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetProgramStringARBPROC) (GLenum target, GLenum pname, GLvoid *string); -typedef void (APIENTRY * glGetVertexAttribdvARBPROC) (GLuint index, GLenum pname, GLdouble *params); -typedef void (APIENTRY * glGetVertexAttribfvARBPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribivARBPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribPointervARBPROC) (GLuint index, GLenum pname, GLvoid **pointer); -typedef GLboolean (APIENTRY * glIsProgramARBPROC) (GLuint program); - -extern glVertexAttrib1sARBPROC glVertexAttrib1sARB; -extern glVertexAttrib1fARBPROC glVertexAttrib1fARB; -extern glVertexAttrib1dARBPROC glVertexAttrib1dARB; -extern glVertexAttrib2sARBPROC glVertexAttrib2sARB; -extern glVertexAttrib2fARBPROC glVertexAttrib2fARB; -extern glVertexAttrib2dARBPROC glVertexAttrib2dARB; -extern glVertexAttrib3sARBPROC glVertexAttrib3sARB; -extern glVertexAttrib3fARBPROC glVertexAttrib3fARB; -extern glVertexAttrib3dARBPROC glVertexAttrib3dARB; -extern glVertexAttrib4sARBPROC glVertexAttrib4sARB; -extern glVertexAttrib4fARBPROC glVertexAttrib4fARB; -extern glVertexAttrib4dARBPROC glVertexAttrib4dARB; -extern glVertexAttrib4NubARBPROC glVertexAttrib4NubARB; -extern glVertexAttrib1svARBPROC glVertexAttrib1svARB; -extern glVertexAttrib1fvARBPROC glVertexAttrib1fvARB; -extern glVertexAttrib1dvARBPROC glVertexAttrib1dvARB; -extern glVertexAttrib2svARBPROC glVertexAttrib2svARB; -extern glVertexAttrib2fvARBPROC glVertexAttrib2fvARB; -extern glVertexAttrib2dvARBPROC glVertexAttrib2dvARB; -extern glVertexAttrib3svARBPROC glVertexAttrib3svARB; -extern glVertexAttrib3fvARBPROC glVertexAttrib3fvARB; -extern glVertexAttrib3dvARBPROC glVertexAttrib3dvARB; -extern glVertexAttrib4bvARBPROC glVertexAttrib4bvARB; -extern glVertexAttrib4svARBPROC glVertexAttrib4svARB; -extern glVertexAttrib4ivARBPROC glVertexAttrib4ivARB; -extern glVertexAttrib4ubvARBPROC glVertexAttrib4ubvARB; -extern glVertexAttrib4usvARBPROC glVertexAttrib4usvARB; -extern glVertexAttrib4uivARBPROC glVertexAttrib4uivARB; -extern glVertexAttrib4fvARBPROC glVertexAttrib4fvARB; -extern glVertexAttrib4dvARBPROC glVertexAttrib4dvARB; -extern glVertexAttrib4NbvARBPROC glVertexAttrib4NbvARB; -extern glVertexAttrib4NsvARBPROC glVertexAttrib4NsvARB; -extern glVertexAttrib4NivARBPROC glVertexAttrib4NivARB; -extern glVertexAttrib4NubvARBPROC glVertexAttrib4NubvARB; -extern glVertexAttrib4NusvARBPROC glVertexAttrib4NusvARB; -extern glVertexAttrib4NuivARBPROC glVertexAttrib4NuivARB; -extern glVertexAttribPointerARBPROC glVertexAttribPointerARB; -extern glEnableVertexAttribArrayARBPROC glEnableVertexAttribArrayARB; -extern glDisableVertexAttribArrayARBPROC glDisableVertexAttribArrayARB; -extern glProgramStringARBPROC glProgramStringARB; -extern glBindProgramARBPROC glBindProgramARB; -extern glDeleteProgramsARBPROC glDeleteProgramsARB; -extern glGenProgramsARBPROC glGenProgramsARB; -extern glProgramEnvParameter4dARBPROC glProgramEnvParameter4dARB; -extern glProgramEnvParameter4dvARBPROC glProgramEnvParameter4dvARB; -extern glProgramEnvParameter4fARBPROC glProgramEnvParameter4fARB; -extern glProgramEnvParameter4fvARBPROC glProgramEnvParameter4fvARB; -extern glProgramLocalParameter4dARBPROC glProgramLocalParameter4dARB; -extern glProgramLocalParameter4dvARBPROC glProgramLocalParameter4dvARB; -extern glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB; -extern glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB; -extern glGetProgramEnvParameterdvARBPROC glGetProgramEnvParameterdvARB; -extern glGetProgramEnvParameterfvARBPROC glGetProgramEnvParameterfvARB; -extern glGetProgramLocalParameterdvARBPROC glGetProgramLocalParameterdvARB; -extern glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB; -extern glGetProgramivARBPROC glGetProgramivARB; -extern glGetProgramStringARBPROC glGetProgramStringARB; -extern glGetVertexAttribdvARBPROC glGetVertexAttribdvARB; -extern glGetVertexAttribfvARBPROC glGetVertexAttribfvARB; -extern glGetVertexAttribivARBPROC glGetVertexAttribivARB; -extern glGetVertexAttribPointervARBPROC glGetVertexAttribPointervARB; -extern glIsProgramARBPROC glIsProgramARB; - -#define GL_VERTEX_PROGRAM_ARB 0x8620 -#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642 -#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643 -#define GL_COLOR_SUM_ARB 0x8458 -#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875 -#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622 -#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623 -#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624 -#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625 -#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A -#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626 -#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645 -#define GL_PROGRAM_LENGTH_ARB 0x8627 -#define GL_PROGRAM_FORMAT_ARB 0x8876 -#define GL_PROGRAM_BINDING_ARB 0x8677 -#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0 -#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1 -#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2 -#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3 -#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4 -#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5 -#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6 -#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7 -#define GL_PROGRAM_PARAMETERS_ARB 0x88A8 -#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9 -#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA -#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB -#define GL_PROGRAM_ATTRIBS_ARB 0x88AC -#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD -#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE -#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF -#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0 -#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1 -#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2 -#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3 -#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4 -#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5 -#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6 -#define GL_PROGRAM_STRING_ARB 0x8628 -#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B -#define GL_CURRENT_MATRIX_ARB 0x8641 -#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7 -#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640 -#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869 -#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F -#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E -#define GL_PROGRAM_ERROR_STRING_ARB 0x8874 -#define GL_MATRIX0_ARB 0x88C0 -#define GL_MATRIX1_ARB 0x88C1 -#define GL_MATRIX2_ARB 0x88C2 -#define GL_MATRIX3_ARB 0x88C3 -#define GL_MATRIX4_ARB 0x88C4 -#define GL_MATRIX5_ARB 0x88C5 -#define GL_MATRIX6_ARB 0x88C6 -#define GL_MATRIX7_ARB 0x88C7 -#define GL_MATRIX8_ARB 0x88C8 -#define GL_MATRIX9_ARB 0x88C9 -#define GL_MATRIX10_ARB 0x88CA -#define GL_MATRIX11_ARB 0x88CB -#define GL_MATRIX12_ARB 0x88CC -#define GL_MATRIX13_ARB 0x88CD -#define GL_MATRIX14_ARB 0x88CE -#define GL_MATRIX15_ARB 0x88CF -#define GL_MATRIX16_ARB 0x88D0 -#define GL_MATRIX17_ARB 0x88D1 -#define GL_MATRIX18_ARB 0x88D2 -#define GL_MATRIX19_ARB 0x88D3 -#define GL_MATRIX20_ARB 0x88D4 -#define GL_MATRIX21_ARB 0x88D5 -#define GL_MATRIX22_ARB 0x88D6 -#define GL_MATRIX23_ARB 0x88D7 -#define GL_MATRIX24_ARB 0x88D8 -#define GL_MATRIX25_ARB 0x88D9 -#define GL_MATRIX26_ARB 0x88DA -#define GL_MATRIX27_ARB 0x88DB -#define GL_MATRIX28_ARB 0x88DC -#define GL_MATRIX29_ARB 0x88DD -#define GL_MATRIX30_ARB 0x88DE -#define GL_MATRIX31_ARB 0x88DF - /*-------------------------------------------------------------------*/ /*------------GL_EXT_BGRA--------------------------------------------*/ /*-------------------------------------------------------------------*/ @@ -5099,19 +3128,6 @@ extern glCullParameterdvEXTPROC glCullParameterdvEXT; #define GL_POINT_CULL_CENTER_ATI 0x60b4 #define GL_POINT_CLIP_ATI 0x60b5 -/*-------------------------------------------------------------------*/ -/*------------GL_BLEND_FUNC_SEPARATE---------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_BLEND_DST_RGB_EXT 0x80C8 -#define GL_BLEND_SRC_RGB_EXT 0x80C9 -#define GL_BLEND_DST_ALPHA_EXT 0x80CA -#define GL_BLEND_SRC_ALPHA_EXT 0x80CB - -typedef void (APIENTRY * glBlendFuncSeparateEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); - -extern glBlendFuncSeparateEXTPROC glBlendFuncSeparateEXT; - /*-------------------------------------------------------------------*/ /*------------GL_EXT_SEPARATE_SPECULAR_COLOR-------------------------*/ /*-------------------------------------------------------------------*/ @@ -5172,57 +3188,6 @@ extern glMultiDrawRangeElementArrayNVPROC glMultiDrawRangeElementArrayNV; #define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8 #endif /* _WIN32 */ -/*-------------------------------------------------------------------*/ -/*------------GL_NV_FRAGMENT_PROGRAM---------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_FRAGMENT_PROGRAM_NV 0x8870 -#define GL_MAX_TEXTURE_COORDS_NV 0x8871 -#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872 -#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873 -#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868 -#define GL_PROGRAM_ERROR_STRING_NV 0x8874 - -typedef void (APIENTRY * glProgramNamedParameter4fNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramNamedParameter4dNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramNamedParameter4fvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLfloat v[]); -typedef void (APIENTRY * glProgramNamedParameter4dvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLdouble v[]); -typedef void (APIENTRY * glProgramLocalParameter4dNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramLocalParameter4dvNVPROC) (GLenum target, GLuint index, const GLdouble *params); -typedef void (APIENTRY * glProgramLocalParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramLocalParameter4fvNVPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glGetProgramNamedParameterfvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); -typedef void (APIENTRY * glGetProgramNamedParameterdvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params); -typedef void (APIENTRY * glGetProgramLocalParameterdvNVPROC) (GLenum target, GLuint index, GLdouble *params); -typedef void (APIENTRY * glGetProgramLocalParameterfvNVPROC) (GLenum target, GLuint index, GLfloat *params); - -typedef void (APIENTRY * glProgramLocalParameter4dARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -typedef void (APIENTRY * glProgramLocalParameter4dvARBPROC) (GLenum target, GLuint index, const GLdouble *params); -typedef void (APIENTRY * glProgramLocalParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramLocalParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glGetProgramLocalParameterdvARBPROC) (GLenum target, GLuint index, GLdouble *params); -typedef void (APIENTRY * glGetProgramLocalParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); - -extern glProgramNamedParameter4fNVPROC glProgramNamedParameter4fNV; -extern glProgramNamedParameter4dNVPROC glProgramNamedParameter4dNV; -extern glProgramNamedParameter4fvNVPROC glProgramNamedParameter4fvNV; -extern glProgramNamedParameter4dvNVPROC glProgramNamedParameter4dvNV; -extern glProgramLocalParameter4dNVPROC glProgramLocalParameter4dNV; -extern glProgramLocalParameter4dvNVPROC glProgramLocalParameter4dvNV; -extern glProgramLocalParameter4fNVPROC glProgramLocalParameter4fNV; -extern glProgramLocalParameter4fvNVPROC glProgramLocalParameter4fvNV; -extern glGetProgramNamedParameterfvNVPROC glGetProgramNamedParameterfvNV; -extern glGetProgramNamedParameterdvNVPROC glGetProgramNamedParameterdvNV; -extern glGetProgramLocalParameterdvNVPROC glGetProgramLocalParameterdvNV; -extern glGetProgramLocalParameterfvNVPROC glGetProgramLocalParameterfvNV; - -extern glProgramLocalParameter4dARBPROC glProgramLocalParameter4dARB; -extern glProgramLocalParameter4dvARBPROC glProgramLocalParameter4dvARB; -extern glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB; -extern glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB; -extern glGetProgramLocalParameterdvARBPROC glGetProgramLocalParameterdvARB; -extern glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB; - /*-------------------------------------------------------------------*/ /*------------GL_NV_PRIMITIVE_RESTART--------------------------------*/ /*-------------------------------------------------------------------*/ @@ -5262,21 +3227,6 @@ extern glPrimitiveRestartIndexNVPROC glPrimitiveRestartIndexNV; #define GL_MAX_TEXTURE_COORDS_ARB 0x8871 #define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872 -/*-------------------------------------------------------------------*/ -/*------------ATI_separate_stencil---------------------------------------*/ -/*-------------------------------------------------------------------*/ - -#define GL_STENCIL_BACK_FUNC_ATI 0x8800 -#define GL_STENCIL_BACK_FAIL_ATI 0x8801 -#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802 -#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803 - -typedef void (APIENTRY * glStencilOpSeparateATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -typedef void (APIENTRY * glStencilFuncSeparateATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); - -extern glStencilOpSeparateATIPROC glStencilOpSeparateATI; -extern glStencilFuncSeparateATIPROC glStencilFuncSeparateATI; - /*-------------------------------------------------------------------*/ /*------------GL_ATI_TEXT_FRAGMENT_SHADER----------------------------*/ /*-------------------------------------------------------------------*/ @@ -5667,6 +3617,14 @@ struct ExtensionTypes }; extern struct ExtensionTypes extgl_Extensions; +extern bool extgl_error; + +typedef GLenum (APIENTRY * glGetErrorPROC) (void); +typedef const GLubyte * (APIENTRY * glGetStringPROC) (GLenum name); + +extern glGetErrorPROC glGetError; +extern glGetStringPROC glGetString; + /* initializes everything, call this right after the rc is created. the function returns 0 if successful */ bool extgl_Initialize(JNIEnv *env, jobject gl_extensions); @@ -5677,9 +3635,16 @@ bool extgl_InitGLX(JNIEnv *env, jobject ext_set, Display *disp, int screen); #ifdef _AGL bool extgl_InitAGL(JNIEnv *env, jobject ext_set); #endif - +void *extgl_GetProcAddress(const char *name); void extgl_Close(void); +void extgl_removeExtension(JNIEnv *env, jobject ext_set, const char *ext); +#define EXTGL_SANITY_CHECK(e,h,x) if (extgl_error) { \ + extgl_Extensions.x = 0; \ + printf("NOTICE: %s disabled because of missing driver symbols\n", #x); \ + extgl_error = false; \ + extgl_removeExtension(e, h, #x); \ + } #ifdef __cplusplus } #endif diff --git a/src/native/common/nv/Makefile.am b/src/native/common/nv/Makefile.am index 25e5cd93..83a3984b 100644 --- a/src/native/common/nv/Makefile.am +++ b/src/native/common/nv/Makefile.am @@ -9,5 +9,6 @@ SRC=org_lwjgl_opengl_nv_NVEvaluators.cpp \ org_lwjgl_opengl_nv_NVPointSprite.cpp \ org_lwjgl_opengl_nv_NVProgram.cpp \ org_lwjgl_opengl_nv_NVRegisterCombiners.cpp \ + org_lwjgl_opengl_nv_NVRegisterCombiners2.cpp \ org_lwjgl_opengl_nv_NVVertexArrayRange.cpp \ org_lwjgl_opengl_nv_NVVertexProgram.cpp diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVEvaluators.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVEvaluators.cpp index e70b9cf4..1706fe99 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVEvaluators.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVEvaluators.cpp @@ -38,6 +38,42 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points); +typedef void (APIENTRY * glMapParameterivNVPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (APIENTRY * glMapParameterfvNVPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glGetMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points); +typedef void (APIENTRY * glGetMapParameterivNVPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetMapParameterfvNVPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetMapAttribParameterivNVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetMapAttribParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glEvalMapsNVPROC) (GLenum target, GLenum mode); + +static glMapControlPointsNVPROC glMapControlPointsNV; +static glMapParameterivNVPROC glMapParameterivNV; +static glMapParameterfvNVPROC glMapParameterfvNV; +static glGetMapControlPointsNVPROC glGetMapControlPointsNV; +static glGetMapParameterivNVPROC glGetMapParameterivNV; +static glGetMapParameterfvNVPROC glGetMapParameterfvNV; +static glGetMapAttribParameterivNVPROC glGetMapAttribParameterivNV; +static glGetMapAttribParameterfvNVPROC glGetMapAttribParameterfvNV; +static glEvalMapsNVPROC glEvalMapsNV; + +void extgl_InitNVEvaluators(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_evaluators) + return; + glMapControlPointsNV = (glMapControlPointsNVPROC) extgl_GetProcAddress("glMapControlPointsNV"); + glMapParameterivNV = (glMapParameterivNVPROC) extgl_GetProcAddress("glMapParameterivNV"); + glMapParameterfvNV = (glMapParameterfvNVPROC) extgl_GetProcAddress("glMapParameterfvNV"); + glGetMapControlPointsNV = (glGetMapControlPointsNVPROC) extgl_GetProcAddress("glGetMapControlPointsNV"); + glGetMapParameterivNV = (glGetMapParameterivNVPROC) extgl_GetProcAddress("glGetMapParameterivNV"); + glGetMapParameterfvNV = (glGetMapParameterfvNVPROC) extgl_GetProcAddress("glGetMapParameterfvNV"); + glGetMapAttribParameterivNV = (glGetMapAttribParameterivNVPROC) extgl_GetProcAddress("glGetMapAttribParameterivNV"); + glGetMapAttribParameterfvNV = (glGetMapAttribParameterfvNVPROC) extgl_GetProcAddress("glGetMapAttribParameterfvNV"); + glEvalMapsNV = (glEvalMapsNVPROC) extgl_GetProcAddress("glEvalMapsNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_evaluators) +} + /* * Class: org.lwjgl.opengl.nv.NVEvaluators * Method: nglGetMapControlPointsNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVFence.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVFence.cpp index 075e7a32..dc7919b1 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVFence.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVFence.cpp @@ -38,6 +38,36 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glGenFencesNVPROC) (GLsizei n, GLuint *fences); +typedef void (APIENTRY * glDeleteFencesNVPROC) (GLsizei n, const GLuint *fences); +typedef void (APIENTRY * glSetFenceNVPROC) (GLuint fence, GLenum condition); +typedef GLboolean (APIENTRY * glTestFenceNVPROC) (GLuint fence); +typedef void (APIENTRY * glFinishFenceNVPROC) (GLuint fence); +typedef GLboolean (APIENTRY * glIsFenceNVPROC) (GLuint fence); +typedef void (APIENTRY * glGetFenceivNVPROC) (GLuint fence, GLenum pname, GLint *params); + +static glGenFencesNVPROC glGenFencesNV; +static glDeleteFencesNVPROC glDeleteFencesNV; +static glSetFenceNVPROC glSetFenceNV; +static glTestFenceNVPROC glTestFenceNV; +static glFinishFenceNVPROC glFinishFenceNV; +static glIsFenceNVPROC glIsFenceNV; +static glGetFenceivNVPROC glGetFenceivNV; + +void extgl_InitNVFence(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_fence) + return; + glGenFencesNV = (glGenFencesNVPROC) extgl_GetProcAddress("glGenFencesNV"); + glDeleteFencesNV = (glDeleteFencesNVPROC) extgl_GetProcAddress("glDeleteFencesNV"); + glSetFenceNV = (glSetFenceNVPROC) extgl_GetProcAddress("glSetFenceNV"); + glTestFenceNV = (glTestFenceNVPROC) extgl_GetProcAddress("glTestFenceNV"); + glFinishFenceNV = (glFinishFenceNVPROC) extgl_GetProcAddress("glFinishFenceNV"); + glIsFenceNV = (glIsFenceNVPROC) extgl_GetProcAddress("glIsFenceNV"); + glGetFenceivNV = (glGetFenceivNVPROC) extgl_GetProcAddress("glGetFenceivNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_fence) +} + /* * Class: org.lwjgl.opengl.nv.NVFence * Method: nglGenFencesNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVFragmentProgram.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVFragmentProgram.cpp index 43c50371..83943eb3 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVFragmentProgram.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVFragmentProgram.cpp @@ -38,6 +38,33 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glProgramNamedParameter4fNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glProgramNamedParameter4fvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLfloat v[]); +typedef void (APIENTRY * glProgramLocalParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glProgramLocalParameter4fvNVPROC) (GLenum target, GLuint index, const GLfloat *params); +typedef void (APIENTRY * glGetProgramNamedParameterfvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); +typedef void (APIENTRY * glGetProgramLocalParameterfvNVPROC) (GLenum target, GLuint index, GLfloat *params); + +static glProgramNamedParameter4fNVPROC glProgramNamedParameter4fNV; +static glProgramNamedParameter4fvNVPROC glProgramNamedParameter4fvNV; +static glProgramLocalParameter4fNVPROC glProgramLocalParameter4fNV; +static glProgramLocalParameter4fvNVPROC glProgramLocalParameter4fvNV; +static glGetProgramNamedParameterfvNVPROC glGetProgramNamedParameterfvNV; +static glGetProgramLocalParameterfvNVPROC glGetProgramLocalParameterfvNV; + +void extgl_InitNVFragmentProgram(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_fragment_program) + return; + glProgramNamedParameter4fNV = (glProgramNamedParameter4fNVPROC) extgl_GetProcAddress("glProgramNamedParameter4fNV"); + glProgramNamedParameter4fvNV = (glProgramNamedParameter4fvNVPROC) extgl_GetProcAddress("glProgramNamedParameter4fvNV"); + glGetProgramNamedParameterfvNV = (glGetProgramNamedParameterfvNVPROC) extgl_GetProcAddress("glGetProgramNamedParameterfvNV"); + glProgramLocalParameter4fNV = (glProgramLocalParameter4fNVPROC) extgl_GetProcAddress("glProgramLocalParameter4fNV"); + glProgramLocalParameter4fvNV = (glProgramLocalParameter4fvNVPROC) extgl_GetProcAddress("glProgramLocalParameter4fvNV"); + glGetProgramLocalParameterfvNV = (glGetProgramLocalParameterfvNVPROC) extgl_GetProcAddress("glGetProgramLocalParameterfvNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_fragment_program) +} + /* * Class: org.lwjgl.opengl.nv.NVFragmentProgram * Method: nglProgramNamedParameter4fNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVOcclusionQuery.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVOcclusionQuery.cpp index f224da33..64008f87 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVOcclusionQuery.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVOcclusionQuery.cpp @@ -38,6 +38,36 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glGenOcclusionQueriesNVPROC) (GLsizei n, GLuint *ids); +typedef void (APIENTRY * glDeleteOcclusionQueriesNVPROC) (GLsizei n, const GLuint *ids); +typedef GLboolean (APIENTRY * glIsOcclusionQueryNVPROC) (GLuint id); +typedef void (APIENTRY * glBeginOcclusionQueryNVPROC) (GLuint id); +typedef void (APIENTRY * glEndOcclusionQueryNVPROC) (void); +typedef void (APIENTRY * glGetOcclusionQueryivNVPROC) (GLuint id, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetOcclusionQueryuivNVPROC) (GLuint id, GLenum pname, GLuint *params); + +static glGenOcclusionQueriesNVPROC glGenOcclusionQueriesNV; +static glDeleteOcclusionQueriesNVPROC glDeleteOcclusionQueriesNV; +static glIsOcclusionQueryNVPROC glIsOcclusionQueryNV; +static glBeginOcclusionQueryNVPROC glBeginOcclusionQueryNV; +static glEndOcclusionQueryNVPROC glEndOcclusionQueryNV; +static glGetOcclusionQueryivNVPROC glGetOcclusionQueryivNV; +static glGetOcclusionQueryuivNVPROC glGetOcclusionQueryuivNV; + +void extgl_InitNVOcclusionQuery(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_occlusion_query) + return; + glGenOcclusionQueriesNV = (glGenOcclusionQueriesNVPROC) extgl_GetProcAddress("glGenOcclusionQueriesNV"); + glDeleteOcclusionQueriesNV = (glDeleteOcclusionQueriesNVPROC) extgl_GetProcAddress("glDeleteOcclusionQueriesNV"); + glIsOcclusionQueryNV = (glIsOcclusionQueryNVPROC) extgl_GetProcAddress("glIsOcclusionQueryNV"); + glBeginOcclusionQueryNV = (glBeginOcclusionQueryNVPROC) extgl_GetProcAddress("glBeginOcclusionQueryNV"); + glEndOcclusionQueryNV = (glEndOcclusionQueryNVPROC) extgl_GetProcAddress("glEndOcclusionQueryNV"); + glGetOcclusionQueryivNV = (glGetOcclusionQueryivNVPROC) extgl_GetProcAddress("glGetOcclusionQueryivNV"); + glGetOcclusionQueryuivNV = (glGetOcclusionQueryuivNVPROC) extgl_GetProcAddress("glGetOcclusionQueryuivNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_occlusion_query) +} + /* * Class: org.lwjgl.opengl.nv.NVOcclusionQuery * Method: nglGenOcclusionQueriesNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVPointSprite.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVPointSprite.cpp index 59944712..4c69c3f3 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVPointSprite.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVPointSprite.cpp @@ -38,6 +38,21 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glPointParameteriNVPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glPointParameterivNVPROC) (GLenum pname, const GLint *params); + +static glPointParameteriNVPROC glPointParameteriNV; +static glPointParameterivNVPROC glPointParameterivNV; + +void extgl_InitNVPointSprite(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_point_sprite) + return; + glPointParameteriNV = (glPointParameteriNVPROC) extgl_GetProcAddress("glPointParameteriNV"); + glPointParameterivNV = (glPointParameterivNVPROC) extgl_GetProcAddress("glPointParameterivNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_point_sprite) +} + /* * Class: org.lwjgl.opengl.nv.NVPointSprite * Method: glPointParameteriNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVProgram.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVProgram.cpp index 7daf0145..1ab689cb 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVProgram.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVProgram.cpp @@ -38,6 +38,42 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glLoadProgramNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte *program); +typedef void (APIENTRY * glBindProgramNVPROC) (GLenum target, GLuint id); +typedef void (APIENTRY * glDeleteProgramsNVPROC) (GLsizei n, const GLuint *ids); +typedef void (APIENTRY * glGenProgramsNVPROC) (GLsizei n, GLuint *ids); +typedef void (APIENTRY * glGetProgramStringNVPROC) (GLuint id, GLenum pname, GLubyte *program); +typedef GLboolean (APIENTRY * glIsProgramNVPROC) (GLuint id); +typedef GLboolean (APIENTRY * glAreProgramsResidentNVPROC) (GLsizei n, const GLuint *ids, GLboolean *residences); +typedef void (APIENTRY * glRequestResidentProgramsNVPROC) (GLsizei n, GLuint *ids); +typedef void (APIENTRY * glGetProgramivNVPROC) (GLuint id, GLenum pname, GLint *params); + +static glLoadProgramNVPROC glLoadProgramNV; +static glBindProgramNVPROC glBindProgramNV; +static glDeleteProgramsNVPROC glDeleteProgramsNV; +static glGenProgramsNVPROC glGenProgramsNV; +static glGetProgramStringNVPROC glGetProgramStringNV; +static glIsProgramNVPROC glIsProgramNV; +static glAreProgramsResidentNVPROC glAreProgramsResidentNV; +static glRequestResidentProgramsNVPROC glRequestResidentProgramsNV; +static glGetProgramivNVPROC glGetProgramivNV; + +void extgl_InitNVProgram(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_vertex_program) + return; + glLoadProgramNV = (glLoadProgramNVPROC) extgl_GetProcAddress("glLoadProgramNV"); + glBindProgramNV = (glBindProgramNVPROC) extgl_GetProcAddress("glBindProgramNV"); + glDeleteProgramsNV = (glDeleteProgramsNVPROC) extgl_GetProcAddress("glDeleteProgramsNV"); + glGenProgramsNV = (glGenProgramsNVPROC) extgl_GetProcAddress("glGenProgramsNV"); + glGetProgramivNV = (glGetProgramivNVPROC) extgl_GetProcAddress("glGetProgramivNV"); + glGetProgramStringNV = (glGetProgramStringNVPROC) extgl_GetProcAddress("glGetProgramStringNV"); + glIsProgramNV = (glIsProgramNVPROC) extgl_GetProcAddress("glIsProgramNV"); + glAreProgramsResidentNV = (glAreProgramsResidentNVPROC) extgl_GetProcAddress("glAreProgramsResidentNV"); + glRequestResidentProgramsNV = (glRequestResidentProgramsNVPROC) extgl_GetProcAddress("glRequestResidentProgramsNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_vertex_program) +} + /* * Class: org.lwjgl.opengl.nv.NVProgram * Method: nglLoadProgramNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners.cpp index 4300f0e2..b4d4e739 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners.cpp @@ -38,6 +38,54 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glCombinerParameterfvNVPROC) (GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glCombinerParameterfNVPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glCombinerParameterivNVPROC) (GLenum pname, const GLint *params); +typedef void (APIENTRY * glCombinerParameteriNVPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glCombinerInputNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (APIENTRY * glCombinerOutputNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); +typedef void (APIENTRY * glFinalCombinerInputNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (APIENTRY * glGetCombinerInputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetCombinerInputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetCombinerOutputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetCombinerOutputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetFinalCombinerInputParameterfvNVPROC) (GLenum variable, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetFinalCombinerInputParameterivNVPROC) (GLenum variable, GLenum pname, GLint *params); + +static glCombinerParameterfvNVPROC glCombinerParameterfvNV; +static glCombinerParameterfNVPROC glCombinerParameterfNV; +static glCombinerParameterivNVPROC glCombinerParameterivNV; +static glCombinerParameteriNVPROC glCombinerParameteriNV; +static glCombinerInputNVPROC glCombinerInputNV; +static glCombinerOutputNVPROC glCombinerOutputNV; +static glFinalCombinerInputNVPROC glFinalCombinerInputNV; +static glGetCombinerInputParameterfvNVPROC glGetCombinerInputParameterfvNV; +static glGetCombinerInputParameterivNVPROC glGetCombinerInputParameterivNV; +static glGetCombinerOutputParameterfvNVPROC glGetCombinerOutputParameterfvNV; +static glGetCombinerOutputParameterivNVPROC glGetCombinerOutputParameterivNV; +static glGetFinalCombinerInputParameterfvNVPROC glGetFinalCombinerInputParameterfvNV; +static glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameterivNV; + +void extgl_InitNVRegisterCombiners(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_register_combiners) + return; + glCombinerParameterfvNV = (glCombinerParameterfvNVPROC) extgl_GetProcAddress("glCombinerParameterfvNV"); + glCombinerParameterfNV = (glCombinerParameterfNVPROC) extgl_GetProcAddress("glCombinerParameterfNV"); + glCombinerParameterivNV = (glCombinerParameterivNVPROC) extgl_GetProcAddress("glCombinerParameterivNV"); + glCombinerParameteriNV = (glCombinerParameteriNVPROC) extgl_GetProcAddress("glCombinerParameteriNV"); + glCombinerInputNV = (glCombinerInputNVPROC) extgl_GetProcAddress("glCombinerInputNV"); + glCombinerOutputNV = (glCombinerOutputNVPROC) extgl_GetProcAddress("glCombinerOutputNV"); + glFinalCombinerInputNV = (glFinalCombinerInputNVPROC) extgl_GetProcAddress("glFinalCombinerInputNV"); + glGetCombinerInputParameterfvNV = (glGetCombinerInputParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerInputParameterfvNV"); + glGetCombinerInputParameterivNV = (glGetCombinerInputParameterivNVPROC) extgl_GetProcAddress("glGetCombinerInputParameterivNV"); + glGetCombinerOutputParameterfvNV = (glGetCombinerOutputParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerOutputParameterfvNV"); + glGetCombinerOutputParameterivNV = (glGetCombinerOutputParameterivNVPROC) extgl_GetProcAddress("glGetCombinerOutputParameterivNV"); + glGetFinalCombinerInputParameterfvNV = (glGetFinalCombinerInputParameterfvNVPROC) extgl_GetProcAddress("glGetFinalCombinerInputParameterfvNV"); + glGetFinalCombinerInputParameterivNV = (glGetFinalCombinerInputParameterivNVPROC) extgl_GetProcAddress("glGetFinalCombinerInputParameterivNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_register_combiners) +} + /* * Class: org.lwjgl.opengl.nv.NVRegisterCombiners * Method: glCombinerParameterfNV @@ -202,28 +250,3 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners_nglGetFinalC CHECK_GL_ERROR } -/* - * Class: org.lwjgl.opengl.nv.NVRegisterCombiners - * Method: nglCombinerStageParameterfvNV - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners_nglCombinerStageParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) -{ - CHECK_EXISTS(glCombinerStageParameterfvNV) - GLfloat *pfParams_ptr = (GLfloat *)env->GetDirectBufferAddress(pfParams) + pfParams_offset; - glCombinerStageParameterfvNV(stage, pname, pfParams_ptr); - CHECK_GL_ERROR -} - -/* - * Class: org.lwjgl.opengl.nv.NVRegisterCombiners - * Method: nglGetCombinerStageParameterfvNV - */ -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners_nglGetCombinerStageParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) -{ - CHECK_EXISTS(glGetCombinerStageParameterfvNV) - GLfloat *pfParams_ptr = (GLfloat *)env->GetDirectBufferAddress(pfParams) + pfParams_offset; - glGetCombinerStageParameterfvNV(stage, pname, pfParams_ptr); - CHECK_GL_ERROR -} diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.cpp new file mode 100644 index 00000000..af52be15 --- /dev/null +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.cpp @@ -0,0 +1,80 @@ +/* +* Copyright (c) 2002 Lightweight Java Game Library 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 'Light Weight Java Game Library' 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. +*/ + +// ---------------------------------- +// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.nv.NVRegisterCombiners2 +// ---------------------------------- + +#include "org_lwjgl_opengl_nv_NVRegisterCombiners2.h" +#include "extgl.h" +#include "checkGLerror.h" + +typedef void (APIENTRY * glCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glGetCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, GLfloat *params); + +static glCombinerStageParameterfvNVPROC glCombinerStageParameterfvNV; +static glGetCombinerStageParameterfvNVPROC glGetCombinerStageParameterfvNV; + +void extgl_InitNVRegisterCombiners2(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_register_combiners2) + return; + glCombinerStageParameterfvNV = (glCombinerStageParameterfvNVPROC) extgl_GetProcAddress("glCombinerStageParameterfvNV"); + glGetCombinerStageParameterfvNV = (glGetCombinerStageParameterfvNVPROC) extgl_GetProcAddress("glGetCombinerStageParameterfvNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_register_combiners2) +} + +/* + * Class: org.lwjgl.opengl.nv.NVRegisterCombiners2 + * Method: nglCombinerStageParameterfvNV + */ +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners2_nglCombinerStageParameterfvNV + (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) +{ + CHECK_EXISTS(glCombinerStageParameterfvNV) + GLfloat *pfParams_ptr = (GLfloat *)env->GetDirectBufferAddress(pfParams) + pfParams_offset; + glCombinerStageParameterfvNV(stage, pname, pfParams_ptr); + CHECK_GL_ERROR +} + +/* + * Class: org.lwjgl.opengl.nv.NVRegisterCombiners2 + * Method: nglGetCombinerStageParameterfvNV + */ +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV + (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) +{ + CHECK_EXISTS(glGetCombinerStageParameterfvNV) + GLfloat *pfParams_ptr = (GLfloat *)env->GetDirectBufferAddress(pfParams) + pfParams_offset; + glGetCombinerStageParameterfvNV(stage, pname, pfParams_ptr); + CHECK_GL_ERROR +} diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.h b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.h new file mode 100644 index 00000000..3afd3f09 --- /dev/null +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVRegisterCombiners2.h @@ -0,0 +1,31 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class org_lwjgl_opengl_nv_NVRegisterCombiners2 */ + +#ifndef _Included_org_lwjgl_opengl_nv_NVRegisterCombiners2 +#define _Included_org_lwjgl_opengl_nv_NVRegisterCombiners2 +#ifdef __cplusplus +extern "C" { +#endif +#undef org_lwjgl_opengl_nv_NVRegisterCombiners2_GL_PER_STAGE_CONSTANTS_NV +#define org_lwjgl_opengl_nv_NVRegisterCombiners2_GL_PER_STAGE_CONSTANTS_NV 34101L +/* + * Class: org_lwjgl_opengl_nv_NVRegisterCombiners2 + * Method: nglCombinerStageParameterfvNV + * Signature: (IILjava/nio/FloatBuffer;I)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners2_nglCombinerStageParameterfvNV + (JNIEnv *, jclass, jint, jint, jobject, jint); + +/* + * Class: org_lwjgl_opengl_nv_NVRegisterCombiners2 + * Method: nglGetCombinerStageParameterfvNV + * Signature: (IILjava/nio/FloatBuffer;I)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV + (JNIEnv *, jclass, jint, jint, jobject, jint); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexArrayRange.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexArrayRange.cpp index 691aded3..5ff46986 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexArrayRange.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexArrayRange.cpp @@ -38,6 +38,49 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glFlushVertexArrayRangeNVPROC) (void); +typedef void (APIENTRY * glVertexArrayRangeNVPROC) (GLsizei size, const GLvoid *pointer); + +static glFlushVertexArrayRangeNVPROC glFlushVertexArrayRangeNV; +static glVertexArrayRangeNVPROC glVertexArrayRangeNV; + +#ifdef _WIN32 + +typedef void * (APIENTRY * wglAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); +typedef void (APIENTRY * wglFreeMemoryNVPROC) (void *pointer); + +static wglAllocateMemoryNVPROC wglAllocateMemoryNV; +static wglFreeMemoryNVPROC wglFreeMemoryNV; + +#endif /* WIN32 */ + +#ifdef _X11 + +typedef void * (APIENTRY * glXAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); +typedef void (APIENTRY * glXFreeMemoryNVPROC) (void *pointer); + +static glXAllocateMemoryNVPROC glXAllocateMemoryNV; +static glXFreeMemoryNVPROC glXFreeMemoryNV; + +#endif /* X11 */ + +void extgl_InitNVVertexArrayRange(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_vertex_array_range) + return; + glFlushVertexArrayRangeNV = (glFlushVertexArrayRangeNVPROC) extgl_GetProcAddress("glFlushVertexArrayRangeNV"); + glVertexArrayRangeNV = (glVertexArrayRangeNVPROC) extgl_GetProcAddress("glVertexArrayRangeNV"); +#ifdef _WIN32 + wglAllocateMemoryNV = (wglAllocateMemoryNVPROC) extgl_GetProcAddress("wglAllocateMemoryNV"); + wglFreeMemoryNV = (wglFreeMemoryNVPROC) extgl_GetProcAddress("wglFreeMemoryNV"); +#endif /* WIN32 */ +#ifdef _X11 + glXAllocateMemoryNV = (glXAllocateMemoryNVPROC) extgl_GetProcAddress("glXAllocateMemoryNV"); + glXFreeMemoryNV = (glXFreeMemoryNVPROC) extgl_GetProcAddress("glXFreeMemoryNV"); +#endif /* X11 */ + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_vertex_array_range) +} + /* * Class: org.lwjgl.opengl.nv.NVVertexArrayRange * Method: nglVertexArrayRangeNV diff --git a/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexProgram.cpp b/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexProgram.cpp index a64b061e..aaf6860f 100644 --- a/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexProgram.cpp +++ b/src/native/common/nv/org_lwjgl_opengl_nv_NVVertexProgram.cpp @@ -38,6 +38,129 @@ #include "extgl.h" #include "checkGLerror.h" +typedef void (APIENTRY * glExecuteProgramNVPROC) (GLenum target, GLuint id, const GLfloat *params); +typedef void (APIENTRY * glGetProgramParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetTrackMatrixivNVPROC) (GLenum target, GLuint address, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetVertexAttribfvNVPROC) (GLuint index, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetVertexAttribivNVPROC) (GLuint index, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetVertexAttribPointervNVPROC) (GLuint index, GLenum pname, GLvoid **pointer); +typedef void (APIENTRY * glProgramParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glProgramParameter4fvNVPROC) (GLenum target, GLuint index, const GLfloat *params); +typedef void (APIENTRY * glProgramParameters4fvNVPROC) (GLenum target, GLuint index, GLuint num, const GLfloat *params); +typedef void (APIENTRY * glTrackMatrixNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); +typedef void (APIENTRY * glVertexAttribPointerNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glVertexAttrib1sNVPROC) (GLuint index, GLshort x); +typedef void (APIENTRY * glVertexAttrib1fNVPROC) (GLuint index, GLfloat x); +typedef void (APIENTRY * glVertexAttrib2sNVPROC) (GLuint index, GLshort x, GLshort y); +typedef void (APIENTRY * glVertexAttrib2fNVPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (APIENTRY * glVertexAttrib3sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glVertexAttrib3fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glVertexAttrib4sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY * glVertexAttrib4fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glVertexAttrib4ubNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (APIENTRY * glVertexAttrib1svNVPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib1fvNVPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib2svNVPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib2fvNVPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib3svNVPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib3fvNVPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib4svNVPROC) (GLuint index, const GLshort *v); +typedef void (APIENTRY * glVertexAttrib4fvNVPROC) (GLuint index, const GLfloat *v); +typedef void (APIENTRY * glVertexAttrib4ubvNVPROC) (GLuint index, const GLubyte *v); +typedef void (APIENTRY * glVertexAttribs1svNVPROC) (GLuint index, GLsizei n, const GLshort *v); +typedef void (APIENTRY * glVertexAttribs1fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); +typedef void (APIENTRY * glVertexAttribs2svNVPROC) (GLuint index, GLsizei n, const GLshort *v); +typedef void (APIENTRY * glVertexAttribs2fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); +typedef void (APIENTRY * glVertexAttribs3svNVPROC) (GLuint index, GLsizei n, const GLshort *v); +typedef void (APIENTRY * glVertexAttribs3fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); +typedef void (APIENTRY * glVertexAttribs4svNVPROC) (GLuint index, GLsizei n, const GLshort *v); +typedef void (APIENTRY * glVertexAttribs4fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); +typedef void (APIENTRY * glVertexAttribs4ubvNVPROC) (GLuint index, GLsizei n, const GLubyte *v); + +static glExecuteProgramNVPROC glExecuteProgramNV; +static glGetProgramParameterfvNVPROC glGetProgramParameterfvNV; +static glGetTrackMatrixivNVPROC glGetTrackMatrixivNV; +static glGetVertexAttribfvNVPROC glGetVertexAttribfvNV; +static glGetVertexAttribivNVPROC glGetVertexAttribivNV; +static glGetVertexAttribPointervNVPROC glGetVertexAttribPointervNV; +static glProgramParameter4fNVPROC glProgramParameter4fNV; +static glProgramParameter4fvNVPROC glProgramParameter4fvNV; +static glProgramParameters4fvNVPROC glProgramParameters4fvNV; +static glTrackMatrixNVPROC glTrackMatrixNV; +static glVertexAttribPointerNVPROC glVertexAttribPointerNV; +static glVertexAttrib1sNVPROC glVertexAttrib1sNV; +static glVertexAttrib1fNVPROC glVertexAttrib1fNV; +static glVertexAttrib2sNVPROC glVertexAttrib2sNV; +static glVertexAttrib2fNVPROC glVertexAttrib2fNV; +static glVertexAttrib3sNVPROC glVertexAttrib3sNV; +static glVertexAttrib3fNVPROC glVertexAttrib3fNV; +static glVertexAttrib4sNVPROC glVertexAttrib4sNV; +static glVertexAttrib4fNVPROC glVertexAttrib4fNV; +static glVertexAttrib4ubNVPROC glVertexAttrib4ubNV; +static glVertexAttrib1svNVPROC glVertexAttrib1svNV; +static glVertexAttrib1fvNVPROC glVertexAttrib1fvNV; +static glVertexAttrib2svNVPROC glVertexAttrib2svNV; +static glVertexAttrib2fvNVPROC glVertexAttrib2fvNV; +static glVertexAttrib3svNVPROC glVertexAttrib3svNV; +static glVertexAttrib3fvNVPROC glVertexAttrib3fvNV; +static glVertexAttrib4svNVPROC glVertexAttrib4svNV; +static glVertexAttrib4fvNVPROC glVertexAttrib4fvNV; +static glVertexAttrib4ubvNVPROC glVertexAttrib4ubvNV; +static glVertexAttribs1svNVPROC glVertexAttribs1svNV; +static glVertexAttribs1fvNVPROC glVertexAttribs1fvNV; +static glVertexAttribs2svNVPROC glVertexAttribs2svNV; +static glVertexAttribs2fvNVPROC glVertexAttribs2fvNV; +static glVertexAttribs3svNVPROC glVertexAttribs3svNV; +static glVertexAttribs3fvNVPROC glVertexAttribs3fvNV; +static glVertexAttribs4svNVPROC glVertexAttribs4svNV; +static glVertexAttribs4fvNVPROC glVertexAttribs4fvNV; +static glVertexAttribs4ubvNVPROC glVertexAttribs4ubvNV; + +void extgl_InitNVVertexProgram(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_NV_vertex_program) + return; + glExecuteProgramNV = (glExecuteProgramNVPROC) extgl_GetProcAddress("glExecuteProgramNV"); + glGetProgramParameterfvNV = (glGetProgramParameterfvNVPROC) extgl_GetProcAddress("glGetProgramParameterfvNV"); + glGetTrackMatrixivNV = (glGetTrackMatrixivNVPROC) extgl_GetProcAddress("glGetTrackMatrixivNV"); + glGetVertexAttribfvNV = (glGetVertexAttribfvNVPROC) extgl_GetProcAddress("glGetVertexAttribfvNV"); + glGetVertexAttribivNV = (glGetVertexAttribivNVPROC) extgl_GetProcAddress("glGetVertexAttribivNV"); + glGetVertexAttribPointervNV = (glGetVertexAttribPointervNVPROC) extgl_GetProcAddress("glGetVertexAttribPointervNV"); + glProgramParameter4fNV = (glProgramParameter4fNVPROC) extgl_GetProcAddress("glProgramParameter4fNV"); + glProgramParameter4fvNV = (glProgramParameter4fvNVPROC) extgl_GetProcAddress("glProgramParameter4fvNV"); + glProgramParameters4fvNV = (glProgramParameters4fvNVPROC) extgl_GetProcAddress("glProgramParameters4fvNV"); + glTrackMatrixNV = (glTrackMatrixNVPROC) extgl_GetProcAddress("glTrackMatrixNV"); + glVertexAttribPointerNV = (glVertexAttribPointerNVPROC) extgl_GetProcAddress("glVertexAttribPointerNV"); + glVertexAttrib1sNV = (glVertexAttrib1sNVPROC) extgl_GetProcAddress("glVertexAttrib1sNV"); + glVertexAttrib1fNV = (glVertexAttrib1fNVPROC) extgl_GetProcAddress("glVertexAttrib1fNV"); + glVertexAttrib2sNV = (glVertexAttrib2sNVPROC) extgl_GetProcAddress("glVertexAttrib2sNV"); + glVertexAttrib2fNV = (glVertexAttrib2fNVPROC) extgl_GetProcAddress("glVertexAttrib2fNV"); + glVertexAttrib3sNV = (glVertexAttrib3sNVPROC) extgl_GetProcAddress("glVertexAttrib3sNV"); + glVertexAttrib3fNV = (glVertexAttrib3fNVPROC) extgl_GetProcAddress("glVertexAttrib3fNV"); + glVertexAttrib4sNV = (glVertexAttrib4sNVPROC) extgl_GetProcAddress("glVertexAttrib4sNV"); + glVertexAttrib4fNV = (glVertexAttrib4fNVPROC) extgl_GetProcAddress("glVertexAttrib4fNV"); + glVertexAttrib4ubNV = (glVertexAttrib4ubNVPROC) extgl_GetProcAddress("glVertexAttrib4ubNV"); + glVertexAttrib1svNV = (glVertexAttrib1svNVPROC) extgl_GetProcAddress("glVertexAttrib1svNV"); + glVertexAttrib1fvNV = (glVertexAttrib1fvNVPROC) extgl_GetProcAddress("glVertexAttrib1fvNV"); + glVertexAttrib2svNV = (glVertexAttrib2svNVPROC) extgl_GetProcAddress("glVertexAttrib2svNV"); + glVertexAttrib2fvNV = (glVertexAttrib2fvNVPROC) extgl_GetProcAddress("glVertexAttrib2fvNV"); + glVertexAttrib3svNV = (glVertexAttrib3svNVPROC) extgl_GetProcAddress("glVertexAttrib3svNV"); + glVertexAttrib3fvNV = (glVertexAttrib3fvNVPROC) extgl_GetProcAddress("glVertexAttrib3fvNV"); + glVertexAttrib4svNV = (glVertexAttrib4svNVPROC) extgl_GetProcAddress("glVertexAttrib4svNV"); + glVertexAttrib4fvNV = (glVertexAttrib4fvNVPROC) extgl_GetProcAddress("glVertexAttrib4fvNV"); + glVertexAttrib4ubvNV = (glVertexAttrib4ubvNVPROC) extgl_GetProcAddress("glVertexAttrib4ubvNV"); + glVertexAttribs1svNV = (glVertexAttribs1svNVPROC) extgl_GetProcAddress("glVertexAttribs1svNV"); + glVertexAttribs1fvNV = (glVertexAttribs1fvNVPROC) extgl_GetProcAddress("glVertexAttribs1fvNV"); + glVertexAttribs2svNV = (glVertexAttribs2svNVPROC) extgl_GetProcAddress("glVertexAttribs2svNV"); + glVertexAttribs2fvNV = (glVertexAttribs2fvNVPROC) extgl_GetProcAddress("glVertexAttribs2fvNV"); + glVertexAttribs3svNV = (glVertexAttribs3svNVPROC) extgl_GetProcAddress("glVertexAttribs3svNV"); + glVertexAttribs3fvNV = (glVertexAttribs3fvNVPROC) extgl_GetProcAddress("glVertexAttribs3fvNV"); + glVertexAttribs4svNV = (glVertexAttribs4svNVPROC) extgl_GetProcAddress("glVertexAttribs4svNV"); + glVertexAttribs4fvNV = (glVertexAttribs4fvNVPROC) extgl_GetProcAddress("glVertexAttribs4fvNV"); + glVertexAttribs4ubvNV = (glVertexAttribs4ubvNVPROC) extgl_GetProcAddress("glVertexAttribs4ubvNV"); + EXTGL_SANITY_CHECK(env, ext_set, GL_NV_vertex_program) +} + /* * Class: org.lwjgl.opengl.nv.NVVertexProgram * Method: nglExecuteProgramNV diff --git a/src/native/common/org_lwjgl_opengl_GL11.cpp b/src/native/common/org_lwjgl_opengl_GL11.cpp index 1702fdc2..056a3db9 100644 --- a/src/native/common/org_lwjgl_opengl_GL11.cpp +++ b/src/native/common/org_lwjgl_opengl_GL11.cpp @@ -39,14 +39,1027 @@ * @version $Revision$ */ -#ifdef _WIN32 -#include -#endif - #include "org_lwjgl_opengl_GL11.h" #include "checkGLerror.h" #include "extgl.h" +typedef void (APIENTRY * glAccumPROC) (GLenum op, GLfloat value); +typedef void (APIENTRY * glAlphaFuncPROC) (GLenum func, GLclampf ref); +typedef GLboolean (APIENTRY * glAreTexturesResidentPROC) (GLsizei n, const GLuint *textures, GLboolean *residences); +typedef void (APIENTRY * glArrayElementPROC) (GLint i); +typedef void (APIENTRY * glBeginPROC) (GLenum mode); +typedef void (APIENTRY * glBindTexturePROC) (GLenum target, GLuint texture); +typedef void (APIENTRY * glBitmapPROC) (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); +typedef void (APIENTRY * glBlendFuncPROC) (GLenum sfactor, GLenum dfactor); +typedef void (APIENTRY * glCallListPROC) (GLuint list); +typedef void (APIENTRY * glCallListsPROC) (GLsizei n, GLenum type, const GLvoid *lists); +typedef void (APIENTRY * glClearPROC) (GLbitfield mask); +typedef void (APIENTRY * glClearAccumPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +typedef void (APIENTRY * glClearColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +typedef void (APIENTRY * glClearDepthPROC) (GLclampd depth); +typedef void (APIENTRY * glClearIndexPROC) (GLfloat c); +typedef void (APIENTRY * glClearStencilPROC) (GLint s); +typedef void (APIENTRY * glClipPlanePROC) (GLenum plane, const GLdouble *equation); +typedef void (APIENTRY * glColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (APIENTRY * glColor3bvPROC) (const GLbyte *v); +typedef void (APIENTRY * glColor3dPROC) (GLdouble red, GLdouble green, GLdouble blue); +typedef void (APIENTRY * glColor3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY * glColor3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glColor3iPROC) (GLint red, GLint green, GLint blue); +typedef void (APIENTRY * glColor3ivPROC) (const GLint *v); +typedef void (APIENTRY * glColor3sPROC) (GLshort red, GLshort green, GLshort blue); +typedef void (APIENTRY * glColor3svPROC) (const GLshort *v); +typedef void (APIENTRY * glColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY * glColor3ubvPROC) (const GLubyte *v); +typedef void (APIENTRY * glColor3uiPROC) (GLuint red, GLuint green, GLuint blue); +typedef void (APIENTRY * glColor3uivPROC) (const GLuint *v); +typedef void (APIENTRY * glColor3usPROC) (GLushort red, GLushort green, GLushort blue); +typedef void (APIENTRY * glColor3usvPROC) (const GLushort *v); +typedef void (APIENTRY * glColor4bPROC) (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); +typedef void (APIENTRY * glColor4bvPROC) (const GLbyte *v); +typedef void (APIENTRY * glColor4dPROC) (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); +typedef void (APIENTRY * glColor4dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glColor4fPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +typedef void (APIENTRY * glColor4fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glColor4iPROC) (GLint red, GLint green, GLint blue, GLint alpha); +typedef void (APIENTRY * glColor4ivPROC) (const GLint *v); +typedef void (APIENTRY * glColor4sPROC) (GLshort red, GLshort green, GLshort blue, GLshort alpha); +typedef void (APIENTRY * glColor4svPROC) (const GLshort *v); +typedef void (APIENTRY * glColor4ubPROC) (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); +typedef void (APIENTRY * glColor4ubvPROC) (const GLubyte *v); +typedef void (APIENTRY * glColor4uiPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha); +typedef void (APIENTRY * glColor4uivPROC) (const GLuint *v); +typedef void (APIENTRY * glColor4usPROC) (GLushort red, GLushort green, GLushort blue, GLushort alpha); +typedef void (APIENTRY * glColor4usvPROC) (const GLushort *v); +typedef void (APIENTRY * glColorMaskPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); +typedef void (APIENTRY * glColorMaterialPROC) (GLenum face, GLenum mode); +typedef void (APIENTRY * glColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glCopyPixelsPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); +typedef void (APIENTRY * glCopyTexImage1DPROC) (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); +typedef void (APIENTRY * glCopyTexImage2DPROC) (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +typedef void (APIENTRY * glCopyTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (APIENTRY * glCopyTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY * glCullFacePROC) (GLenum mode); +typedef void (APIENTRY * glDeleteListsPROC) (GLuint list, GLsizei range); +typedef void (APIENTRY * glDeleteTexturesPROC) (GLsizei n, const GLuint *textures); +typedef void (APIENTRY * glDepthFuncPROC) (GLenum func); +typedef void (APIENTRY * glDepthMaskPROC) (GLboolean flag); +typedef void (APIENTRY * glDepthRangePROC) (GLclampd zNear, GLclampd zFar); +typedef void (APIENTRY * glDisablePROC) (GLenum cap); +typedef void (APIENTRY * glDisableClientStatePROC) (GLenum array); +typedef void (APIENTRY * glDrawArraysPROC) (GLenum mode, GLint first, GLsizei count); +typedef void (APIENTRY * glDrawBufferPROC) (GLenum mode); +typedef void (APIENTRY * glDrawElementsPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices); +typedef void (APIENTRY * glDrawPixelsPROC) (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glEdgeFlagPROC) (GLboolean flag); +typedef void (APIENTRY * glEdgeFlagPointerPROC) (GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glEdgeFlagvPROC) (const GLboolean *flag); +typedef void (APIENTRY * glEnablePROC) (GLenum cap); +typedef void (APIENTRY * glEnableClientStatePROC) (GLenum array); +typedef void (APIENTRY * glEndPROC) (void); +typedef void (APIENTRY * glEndListPROC) (void); +typedef void (APIENTRY * glEvalCoord1dPROC) (GLdouble u); +typedef void (APIENTRY * glEvalCoord1dvPROC) (const GLdouble *u); +typedef void (APIENTRY * glEvalCoord1fPROC) (GLfloat u); +typedef void (APIENTRY * glEvalCoord1fvPROC) (const GLfloat *u); +typedef void (APIENTRY * glEvalCoord2dPROC) (GLdouble u, GLdouble v); +typedef void (APIENTRY * glEvalCoord2dvPROC) (const GLdouble *u); +typedef void (APIENTRY * glEvalCoord2fPROC) (GLfloat u, GLfloat v); +typedef void (APIENTRY * glEvalCoord2fvPROC) (const GLfloat *u); +typedef void (APIENTRY * glEvalMesh1PROC) (GLenum mode, GLint i1, GLint i2); +typedef void (APIENTRY * glEvalMesh2PROC) (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); +typedef void (APIENTRY * glEvalPoint1PROC) (GLint i); +typedef void (APIENTRY * glEvalPoint2PROC) (GLint i, GLint j); +typedef void (APIENTRY * glFeedbackBufferPROC) (GLsizei size, GLenum type, GLfloat *buffer); +typedef void (APIENTRY * glFinishPROC) (void); +typedef void (APIENTRY * glFlushPROC) (void); +typedef void (APIENTRY * glFogfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glFogfvPROC) (GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glFogiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glFogivPROC) (GLenum pname, const GLint *params); +typedef void (APIENTRY * glFrontFacePROC) (GLenum mode); +typedef void (APIENTRY * glFrustumPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +typedef GLuint (APIENTRY * glGenListsPROC) (GLsizei range); +typedef void (APIENTRY * glGenTexturesPROC) (GLsizei n, GLuint *textures); +typedef void (APIENTRY * glGetBooleanvPROC) (GLenum pname, GLboolean *params); +typedef void (APIENTRY * glGetClipPlanePROC) (GLenum plane, GLdouble *equation); +typedef void (APIENTRY * glGetDoublevPROC) (GLenum pname, GLdouble *params); +//typedef GLenum (APIENTRY * glGetErrorPROC) (void); +typedef void (APIENTRY * glGetFloatvPROC) (GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetIntegervPROC) (GLenum pname, GLint *params); +typedef void (APIENTRY * glGetLightfvPROC) (GLenum light, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetLightivPROC) (GLenum light, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetMapdvPROC) (GLenum target, GLenum query, GLdouble *v); +typedef void (APIENTRY * glGetMapfvPROC) (GLenum target, GLenum query, GLfloat *v); +typedef void (APIENTRY * glGetMapivPROC) (GLenum target, GLenum query, GLint *v); +typedef void (APIENTRY * glGetMaterialfvPROC) (GLenum face, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetMaterialivPROC) (GLenum face, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetPixelMapfvPROC) (GLenum map, GLfloat *values); +typedef void (APIENTRY * glGetPixelMapuivPROC) (GLenum map, GLuint *values); +typedef void (APIENTRY * glGetPixelMapusvPROC) (GLenum map, GLushort *values); +typedef void (APIENTRY * glGetPointervPROC) (GLenum pname, GLvoid* *params); +typedef void (APIENTRY * glGetPolygonStipplePROC) (GLubyte *mask); +//typedef const GLubyte * (APIENTRY * glGetStringPROC) (GLenum name); +typedef void (APIENTRY * glGetTexEnvfvPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetTexEnvivPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetTexGendvPROC) (GLenum coord, GLenum pname, GLdouble *params); +typedef void (APIENTRY * glGetTexGenfvPROC) (GLenum coord, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetTexGenivPROC) (GLenum coord, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetTexImagePROC) (GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels); +typedef void (APIENTRY * glGetTexLevelParameterfvPROC) (GLenum target, GLint level, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetTexLevelParameterivPROC) (GLenum target, GLint level, GLenum pname, GLint *params); +typedef void (APIENTRY * glGetTexParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (APIENTRY * glGetTexParameterivPROC) (GLenum target, GLenum pname, GLint *params); +typedef void (APIENTRY * glHintPROC) (GLenum target, GLenum mode); +typedef void (APIENTRY * glIndexMaskPROC) (GLuint mask); +typedef void (APIENTRY * glIndexPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glIndexdPROC) (GLdouble c); +typedef void (APIENTRY * glIndexdvPROC) (const GLdouble *c); +typedef void (APIENTRY * glIndexfPROC) (GLfloat c); +typedef void (APIENTRY * glIndexfvPROC) (const GLfloat *c); +typedef void (APIENTRY * glIndexiPROC) (GLint c); +typedef void (APIENTRY * glIndexivPROC) (const GLint *c); +typedef void (APIENTRY * glIndexsPROC) (GLshort c); +typedef void (APIENTRY * glIndexsvPROC) (const GLshort *c); +typedef void (APIENTRY * glIndexubPROC) (GLubyte c); +typedef void (APIENTRY * glIndexubvPROC) (const GLubyte *c); +typedef void (APIENTRY * glInitNamesPROC) (void); +typedef void (APIENTRY * glInterleavedArraysPROC) (GLenum format, GLsizei stride, const GLvoid *pointer); +typedef GLboolean (APIENTRY * glIsEnabledPROC) (GLenum cap); +typedef GLboolean (APIENTRY * glIsListPROC) (GLuint list); +typedef GLboolean (APIENTRY * glIsTexturePROC) (GLuint texture); +typedef void (APIENTRY * glLightModelfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glLightModelfvPROC) (GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glLightModeliPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glLightModelivPROC) (GLenum pname, const GLint *params); +typedef void (APIENTRY * glLightfPROC) (GLenum light, GLenum pname, GLfloat param); +typedef void (APIENTRY * glLightfvPROC) (GLenum light, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glLightiPROC) (GLenum light, GLenum pname, GLint param); +typedef void (APIENTRY * glLightivPROC) (GLenum light, GLenum pname, const GLint *params); +typedef void (APIENTRY * glLineStipplePROC) (GLint factor, GLushort pattern); +typedef void (APIENTRY * glLineWidthPROC) (GLfloat width); +typedef void (APIENTRY * glListBasePROC) (GLuint base); +typedef void (APIENTRY * glLoadIdentityPROC) (void); +typedef void (APIENTRY * glLoadMatrixdPROC) (const GLdouble *m); +typedef void (APIENTRY * glLoadMatrixfPROC) (const GLfloat *m); +typedef void (APIENTRY * glLoadNamePROC) (GLuint name); +typedef void (APIENTRY * glLogicOpPROC) (GLenum opcode); +typedef void (APIENTRY * glMap1dPROC) (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points); +typedef void (APIENTRY * glMap1fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); +typedef void (APIENTRY * glMap2dPROC) (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); +typedef void (APIENTRY * glMap2fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); +typedef void (APIENTRY * glMapGrid1dPROC) (GLint un, GLdouble u1, GLdouble u2); +typedef void (APIENTRY * glMapGrid1fPROC) (GLint un, GLfloat u1, GLfloat u2); +typedef void (APIENTRY * glMapGrid2dPROC) (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); +typedef void (APIENTRY * glMapGrid2fPROC) (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); +typedef void (APIENTRY * glMaterialfPROC) (GLenum face, GLenum pname, GLfloat param); +typedef void (APIENTRY * glMaterialfvPROC) (GLenum face, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glMaterialiPROC) (GLenum face, GLenum pname, GLint param); +typedef void (APIENTRY * glMaterialivPROC) (GLenum face, GLenum pname, const GLint *params); +typedef void (APIENTRY * glMatrixModePROC) (GLenum mode); +typedef void (APIENTRY * glMultMatrixdPROC) (const GLdouble *m); +typedef void (APIENTRY * glMultMatrixfPROC) (const GLfloat *m); +typedef void (APIENTRY * glNewListPROC) (GLuint list, GLenum mode); +typedef void (APIENTRY * glNormal3bPROC) (GLbyte nx, GLbyte ny, GLbyte nz); +typedef void (APIENTRY * glNormal3bvPROC) (const GLbyte *v); +typedef void (APIENTRY * glNormal3dPROC) (GLdouble nx, GLdouble ny, GLdouble nz); +typedef void (APIENTRY * glNormal3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glNormal3fPROC) (GLfloat nx, GLfloat ny, GLfloat nz); +typedef void (APIENTRY * glNormal3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glNormal3iPROC) (GLint nx, GLint ny, GLint nz); +typedef void (APIENTRY * glNormal3ivPROC) (const GLint *v); +typedef void (APIENTRY * glNormal3sPROC) (GLshort nx, GLshort ny, GLshort nz); +typedef void (APIENTRY * glNormal3svPROC) (const GLshort *v); +typedef void (APIENTRY * glNormalPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glOrthoPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +typedef void (APIENTRY * glPassThroughPROC) (GLfloat token); +typedef void (APIENTRY * glPixelMapfvPROC) (GLenum map, GLsizei mapsize, const GLfloat *values); +typedef void (APIENTRY * glPixelMapuivPROC) (GLenum map, GLsizei mapsize, const GLuint *values); +typedef void (APIENTRY * glPixelMapusvPROC) (GLenum map, GLsizei mapsize, const GLushort *values); +typedef void (APIENTRY * glPixelStorefPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glPixelStoreiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glPixelTransferfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glPixelTransferiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY * glPixelZoomPROC) (GLfloat xfactor, GLfloat yfactor); +typedef void (APIENTRY * glPointSizePROC) (GLfloat size); +typedef void (APIENTRY * glPolygonModePROC) (GLenum face, GLenum mode); +typedef void (APIENTRY * glPolygonOffsetPROC) (GLfloat factor, GLfloat units); +typedef void (APIENTRY * glPolygonStipplePROC) (const GLubyte *mask); +typedef void (APIENTRY * glPopAttribPROC) (void); +typedef void (APIENTRY * glPopClientAttribPROC) (void); +typedef void (APIENTRY * glPopMatrixPROC) (void); +typedef void (APIENTRY * glPopNamePROC) (void); +typedef void (APIENTRY * glPrioritizeTexturesPROC) (GLsizei n, const GLuint *textures, const GLclampf *priorities); +typedef void (APIENTRY * glPushAttribPROC) (GLbitfield mask); +typedef void (APIENTRY * glPushClientAttribPROC) (GLbitfield mask); +typedef void (APIENTRY * glPushMatrixPROC) (void); +typedef void (APIENTRY * glPushNamePROC) (GLuint name); +typedef void (APIENTRY * glRasterPos2dPROC) (GLdouble x, GLdouble y); +typedef void (APIENTRY * glRasterPos2dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glRasterPos2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY * glRasterPos2fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glRasterPos2iPROC) (GLint x, GLint y); +typedef void (APIENTRY * glRasterPos2ivPROC) (const GLint *v); +typedef void (APIENTRY * glRasterPos2sPROC) (GLshort x, GLshort y); +typedef void (APIENTRY * glRasterPos2svPROC) (const GLshort *v); +typedef void (APIENTRY * glRasterPos3dPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glRasterPos3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glRasterPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glRasterPos3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glRasterPos3iPROC) (GLint x, GLint y, GLint z); + +typedef void (APIENTRY * glRasterPos3ivPROC) (const GLint *v); +typedef void (APIENTRY * glRasterPos3sPROC) (GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glRasterPos3svPROC) (const GLshort *v); +typedef void (APIENTRY * glRasterPos4dPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (APIENTRY * glRasterPos4dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glRasterPos4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glRasterPos4fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glRasterPos4iPROC) (GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY * glRasterPos4ivPROC) (const GLint *v); +typedef void (APIENTRY * glRasterPos4sPROC) (GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY * glRasterPos4svPROC) (const GLshort *v); +typedef void (APIENTRY * glReadBufferPROC) (GLenum mode); +typedef void (APIENTRY * glReadPixelsPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels); +typedef void (APIENTRY * glRectdPROC) (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); +typedef void (APIENTRY * glRectdvPROC) (const GLdouble *v1, const GLdouble *v2); +typedef void (APIENTRY * glRectfPROC) (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); +typedef void (APIENTRY * glRectfvPROC) (const GLfloat *v1, const GLfloat *v2); +typedef void (APIENTRY * glRectiPROC) (GLint x1, GLint y1, GLint x2, GLint y2); +typedef void (APIENTRY * glRectivPROC) (const GLint *v1, const GLint *v2); +typedef void (APIENTRY * glRectsPROC) (GLshort x1, GLshort y1, GLshort x2, GLshort y2); +typedef void (APIENTRY * glRectsvPROC) (const GLshort *v1, const GLshort *v2); +typedef GLint (APIENTRY * glRenderModePROC) (GLenum mode); +typedef void (APIENTRY * glRotatedPROC) (GLdouble angle, GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glRotatefPROC) (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glScaledPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glScalefPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glScissorPROC) (GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY * glSelectBufferPROC) (GLsizei size, GLuint *buffer); +typedef void (APIENTRY * glShadeModelPROC) (GLenum mode); +typedef void (APIENTRY * glStencilFuncPROC) (GLenum func, GLint ref, GLuint mask); +typedef void (APIENTRY * glStencilMaskPROC) (GLuint mask); +typedef void (APIENTRY * glStencilOpPROC) (GLenum fail, GLenum zfail, GLenum zpass); +typedef void (APIENTRY * glTexCoord1dPROC) (GLdouble s); +typedef void (APIENTRY * glTexCoord1dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glTexCoord1fPROC) (GLfloat s); +typedef void (APIENTRY * glTexCoord1fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glTexCoord1iPROC) (GLint s); +typedef void (APIENTRY * glTexCoord1ivPROC) (const GLint *v); +typedef void (APIENTRY * glTexCoord1sPROC) (GLshort s); +typedef void (APIENTRY * glTexCoord1svPROC) (const GLshort *v); +typedef void (APIENTRY * glTexCoord2dPROC) (GLdouble s, GLdouble t); +typedef void (APIENTRY * glTexCoord2dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glTexCoord2fPROC) (GLfloat s, GLfloat t); +typedef void (APIENTRY * glTexCoord2fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glTexCoord2iPROC) (GLint s, GLint t); +typedef void (APIENTRY * glTexCoord2ivPROC) (const GLint *v); +typedef void (APIENTRY * glTexCoord2sPROC) (GLshort s, GLshort t); +typedef void (APIENTRY * glTexCoord2svPROC) (const GLshort *v); +typedef void (APIENTRY * glTexCoord3dPROC) (GLdouble s, GLdouble t, GLdouble r); +typedef void (APIENTRY * glTexCoord3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glTexCoord3fPROC) (GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRY * glTexCoord3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glTexCoord3iPROC) (GLint s, GLint t, GLint r); +typedef void (APIENTRY * glTexCoord3ivPROC) (const GLint *v); +typedef void (APIENTRY * glTexCoord3sPROC) (GLshort s, GLshort t, GLshort r); +typedef void (APIENTRY * glTexCoord3svPROC) (const GLshort *v); +typedef void (APIENTRY * glTexCoord4dPROC) (GLdouble s, GLdouble t, GLdouble r, GLdouble q); +typedef void (APIENTRY * glTexCoord4dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glTexCoord4fPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRY * glTexCoord4fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glTexCoord4iPROC) (GLint s, GLint t, GLint r, GLint q); +typedef void (APIENTRY * glTexCoord4ivPROC) (const GLint *v); +typedef void (APIENTRY * glTexCoord4sPROC) (GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (APIENTRY * glTexCoord4svPROC) (const GLshort *v); +typedef void (APIENTRY * glTexCoordPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glTexEnvfPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (APIENTRY * glTexEnvfvPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glTexEnviPROC) (GLenum target, GLenum pname, GLint param); +typedef void (APIENTRY * glTexEnvivPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (APIENTRY * glTexGendPROC) (GLenum coord, GLenum pname, GLdouble param); +typedef void (APIENTRY * glTexGendvPROC) (GLenum coord, GLenum pname, const GLdouble *params); +typedef void (APIENTRY * glTexGenfPROC) (GLenum coord, GLenum pname, GLfloat param); +typedef void (APIENTRY * glTexGenfvPROC) (GLenum coord, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glTexGeniPROC) (GLenum coord, GLenum pname, GLint param); +typedef void (APIENTRY * glTexGenivPROC) (GLenum coord, GLenum pname, const GLint *params); +typedef void (APIENTRY * glTexImage1DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glTexImage2DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glTexParameterfPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (APIENTRY * glTexParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glTexParameteriPROC) (GLenum target, GLenum pname, GLint param); +typedef void (APIENTRY * glTexParameterivPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (APIENTRY * glTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glTranslatedPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glTranslatefPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glVertex2dPROC) (GLdouble x, GLdouble y); +typedef void (APIENTRY * glVertex2dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glVertex2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY * glVertex2fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glVertex2iPROC) (GLint x, GLint y); +typedef void (APIENTRY * glVertex2ivPROC) (const GLint *v); +typedef void (APIENTRY * glVertex2sPROC) (GLshort x, GLshort y); +typedef void (APIENTRY * glVertex2svPROC) (const GLshort *v); +typedef void (APIENTRY * glVertex3dPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glVertex3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glVertex3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glVertex3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glVertex3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY * glVertex3ivPROC) (const GLint *v); +typedef void (APIENTRY * glVertex3sPROC) (GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glVertex3svPROC) (const GLshort *v); +typedef void (APIENTRY * glVertex4dPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble w); +typedef void (APIENTRY * glVertex4dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glVertex4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY * glVertex4fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glVertex4iPROC) (GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY * glVertex4ivPROC) (const GLint *v); +typedef void (APIENTRY * glVertex4sPROC) (GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY * glVertex4svPROC) (const GLshort *v); +typedef void (APIENTRY * glVertexPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glViewportPROC) (GLint x, GLint y, GLsizei width, GLsizei height); + +static glAccumPROC glAccum; +static glAlphaFuncPROC glAlphaFunc; +static glAreTexturesResidentPROC glAreTexturesResident; +static glArrayElementPROC glArrayElement; +static glBeginPROC glBegin; +static glBindTexturePROC glBindTexture; +static glBitmapPROC glBitmap; +static glBlendFuncPROC glBlendFunc; +static glCallListPROC glCallList; +static glCallListsPROC glCallLists; +static glClearPROC glClear; +static glClearAccumPROC glClearAccum; +static glClearColorPROC glClearColor; +static glClearDepthPROC glClearDepth; +static glClearIndexPROC glClearIndex; +static glClearStencilPROC glClearStencil; +static glClipPlanePROC glClipPlane; +static glColor3bPROC glColor3b; +static glColor3bvPROC glColor3bv; +static glColor3dPROC glColor3d; +static glColor3dvPROC glColor3dv; +static glColor3fPROC glColor3f; +static glColor3fvPROC glColor3fv; +static glColor3iPROC glColor3i; +static glColor3ivPROC glColor3iv; +static glColor3sPROC glColor3s; +static glColor3svPROC glColor3sv; +static glColor3ubPROC glColor3ub; +static glColor3ubvPROC glColor3ubv; +static glColor3uiPROC glColor3ui; +static glColor3uivPROC glColor3uiv; +static glColor3usPROC glColor3us; +static glColor3usvPROC glColor3usv; +static glColor4bPROC glColor4b; +static glColor4bvPROC glColor4bv; +static glColor4dPROC glColor4d; +static glColor4dvPROC glColor4dv; +static glColor4fPROC glColor4f; +static glColor4fvPROC glColor4fv; +static glColor4iPROC glColor4i; +static glColor4ivPROC glColor4iv; +static glColor4sPROC glColor4s; +static glColor4svPROC glColor4sv; +static glColor4ubPROC glColor4ub; +static glColor4ubvPROC glColor4ubv; +static glColor4uiPROC glColor4ui; +static glColor4uivPROC glColor4uiv; +static glColor4usPROC glColor4us; +static glColor4usvPROC glColor4usv; +static glColorMaskPROC glColorMask; +static glColorMaterialPROC glColorMaterial; +static glColorPointerPROC glColorPointer; +static glCopyPixelsPROC glCopyPixels; +static glCopyTexImage1DPROC glCopyTexImage1D; +static glCopyTexImage2DPROC glCopyTexImage2D; +static glCopyTexSubImage1DPROC glCopyTexSubImage1D; +static glCopyTexSubImage2DPROC glCopyTexSubImage2D; +static glCullFacePROC glCullFace; +static glDeleteListsPROC glDeleteLists; +static glDeleteTexturesPROC glDeleteTextures; +static glDepthFuncPROC glDepthFunc; +static glDepthMaskPROC glDepthMask; +static glDepthRangePROC glDepthRange; +static glDisablePROC glDisable; +static glDisableClientStatePROC glDisableClientState; +static glDrawArraysPROC glDrawArrays; +static glDrawBufferPROC glDrawBuffer; +static glDrawElementsPROC glDrawElements; +static glDrawPixelsPROC glDrawPixels; +static glEdgeFlagPROC glEdgeFlag; +static glEdgeFlagPointerPROC glEdgeFlagPointer; +static glEdgeFlagvPROC glEdgeFlagv; +static glEnablePROC glEnable; +static glEnableClientStatePROC glEnableClientState; +static glEndPROC glEnd; +static glEndListPROC glEndList; +static glEvalCoord1dPROC glEvalCoord1d; +static glEvalCoord1dvPROC glEvalCoord1dv; +static glEvalCoord1fPROC glEvalCoord1f; +static glEvalCoord1fvPROC glEvalCoord1fv; +static glEvalCoord2dPROC glEvalCoord2d; +static glEvalCoord2dvPROC glEvalCoord2dv; +static glEvalCoord2fPROC glEvalCoord2f; +static glEvalCoord2fvPROC glEvalCoord2fv; +static glEvalMesh1PROC glEvalMesh1; +static glEvalMesh2PROC glEvalMesh2; +static glEvalPoint1PROC glEvalPoint1; +static glEvalPoint2PROC glEvalPoint2; +static glFeedbackBufferPROC glFeedbackBuffer; +static glFinishPROC glFinish; +static glFlushPROC glFlush; +static glFogfPROC glFogf; +static glFogfvPROC glFogfv; +static glFogiPROC glFogi; +static glFogivPROC glFogiv; +static glFrontFacePROC glFrontFace; +static glFrustumPROC glFrustum; +static glGenListsPROC glGenLists; +static glGenTexturesPROC glGenTextures; +static glGetBooleanvPROC glGetBooleanv; +static glGetClipPlanePROC glGetClipPlane; +static glGetDoublevPROC glGetDoublev; +glGetErrorPROC glGetError; +static glGetFloatvPROC glGetFloatv; +static glGetIntegervPROC glGetIntegerv; +static glGetLightfvPROC glGetLightfv; +static glGetLightivPROC glGetLightiv; +static glGetMapdvPROC glGetMapdv; +static glGetMapfvPROC glGetMapfv; +static glGetMapivPROC glGetMapiv; +static glGetMaterialfvPROC glGetMaterialfv; +static glGetMaterialivPROC glGetMaterialiv; +static glGetPixelMapfvPROC glGetPixelMapfv; +static glGetPixelMapuivPROC glGetPixelMapuiv; +static glGetPixelMapusvPROC glGetPixelMapusv; +static glGetPointervPROC glGetPointerv; +static glGetPolygonStipplePROC glGetPolygonStipple; +glGetStringPROC glGetString; +static glGetTexEnvfvPROC glGetTexEnvfv; +static glGetTexEnvivPROC glGetTexEnviv; +static glGetTexGendvPROC glGetTexGendv; +static glGetTexGenfvPROC glGetTexGenfv; +static glGetTexGenivPROC glGetTexGeniv; +static glGetTexImagePROC glGetTexImage; +static glGetTexLevelParameterfvPROC glGetTexLevelParameterfv; +static glGetTexLevelParameterivPROC glGetTexLevelParameteriv; +static glGetTexParameterfvPROC glGetTexParameterfv; +static glGetTexParameterivPROC glGetTexParameteriv; +static glHintPROC glHint; +static glIndexMaskPROC glIndexMask; +static glIndexPointerPROC glIndexPointer; +static glIndexdPROC glIndexd; +static glIndexdvPROC glIndexdv; +static glIndexfPROC glIndexf; +static glIndexfvPROC glIndexfv; +static glIndexiPROC glIndexi; +static glIndexivPROC glIndexiv; +static glIndexsPROC glIndexs; +static glIndexsvPROC glIndexsv; +static glIndexubPROC glIndexub; +static glIndexubvPROC glIndexubv; +static glInitNamesPROC glInitNames; +static glInterleavedArraysPROC glInterleavedArrays; +static glIsEnabledPROC glIsEnabled; +static glIsListPROC glIsList; +static glIsTexturePROC glIsTexture; +static glLightModelfPROC glLightModelf; +static glLightModelfvPROC glLightModelfv; +static glLightModeliPROC glLightModeli; +static glLightModelivPROC glLightModeliv; +static glLightfPROC glLightf; +static glLightfvPROC glLightfv; +static glLightiPROC glLighti; +static glLightivPROC glLightiv; +static glLineStipplePROC glLineStipple; +static glLineWidthPROC glLineWidth; +static glListBasePROC glListBase; +static glLoadIdentityPROC glLoadIdentity; +static glLoadMatrixdPROC glLoadMatrixd; +static glLoadMatrixfPROC glLoadMatrixf; +static glLoadNamePROC glLoadName; +static glLogicOpPROC glLogicOp; +static glMap1dPROC glMap1d; +static glMap1fPROC glMap1f; +static glMap2dPROC glMap2d; +static glMap2fPROC glMap2f; +static glMapGrid1dPROC glMapGrid1d; +static glMapGrid1fPROC glMapGrid1f; +static glMapGrid2dPROC glMapGrid2d; +static glMapGrid2fPROC glMapGrid2f; +static glMaterialfPROC glMaterialf; +static glMaterialfvPROC glMaterialfv; +static glMaterialiPROC glMateriali; +static glMaterialivPROC glMaterialiv; +static glMatrixModePROC glMatrixMode; +static glMultMatrixdPROC glMultMatrixd; +static glMultMatrixfPROC glMultMatrixf; +static glNewListPROC glNewList; +static glNormal3bPROC glNormal3b; +static glNormal3bvPROC glNormal3bv; +static glNormal3dPROC glNormal3d; +static glNormal3dvPROC glNormal3dv; +static glNormal3fPROC glNormal3f; +static glNormal3fvPROC glNormal3fv; +static glNormal3iPROC glNormal3i; +static glNormal3ivPROC glNormal3iv; +static glNormal3sPROC glNormal3s; +static glNormal3svPROC glNormal3sv; +static glNormalPointerPROC glNormalPointer; +static glOrthoPROC glOrtho; +static glPassThroughPROC glPassThrough; +static glPixelMapfvPROC glPixelMapfv; +static glPixelMapuivPROC glPixelMapuiv; +static glPixelMapusvPROC glPixelMapusv; +static glPixelStorefPROC glPixelStoref; +static glPixelStoreiPROC glPixelStorei; +static glPixelTransferfPROC glPixelTransferf; +static glPixelTransferiPROC glPixelTransferi; +static glPixelZoomPROC glPixelZoom; +static glPointSizePROC glPointSize; +static glPolygonModePROC glPolygonMode; +static glPolygonOffsetPROC glPolygonOffset; +static glPolygonStipplePROC glPolygonStipple; +static glPopAttribPROC glPopAttrib; +static glPopClientAttribPROC glPopClientAttrib; +static glPopMatrixPROC glPopMatrix; +static glPopNamePROC glPopName; +static glPrioritizeTexturesPROC glPrioritizeTextures; +static glPushAttribPROC glPushAttrib; +static glPushClientAttribPROC glPushClientAttrib; +static glPushMatrixPROC glPushMatrix; +static glPushNamePROC glPushName; +static glRasterPos2dPROC glRasterPos2d; +static glRasterPos2dvPROC glRasterPos2dv; +static glRasterPos2fPROC glRasterPos2f; +static glRasterPos2fvPROC glRasterPos2fv; +static glRasterPos2iPROC glRasterPos2i; +static glRasterPos2ivPROC glRasterPos2iv; +static glRasterPos2sPROC glRasterPos2s; +static glRasterPos2svPROC glRasterPos2sv; +static glRasterPos3dPROC glRasterPos3d; +static glRasterPos3dvPROC glRasterPos3dv; +static glRasterPos3fPROC glRasterPos3f; +static glRasterPos3fvPROC glRasterPos3fv; +static glRasterPos3iPROC glRasterPos3i; + +static glRasterPos3ivPROC glRasterPos3iv; +static glRasterPos3sPROC glRasterPos3s; +static glRasterPos3svPROC glRasterPos3sv; +static glRasterPos4dPROC glRasterPos4d; +static glRasterPos4dvPROC glRasterPos4dv; +static glRasterPos4fPROC glRasterPos4f; +static glRasterPos4fvPROC glRasterPos4fv; +static glRasterPos4iPROC glRasterPos4i; +static glRasterPos4ivPROC glRasterPos4iv; +static glRasterPos4sPROC glRasterPos4s; +static glRasterPos4svPROC glRasterPos4sv; +static glReadBufferPROC glReadBuffer; +static glReadPixelsPROC glReadPixels; +static glRectdPROC glRectd; +static glRectdvPROC glRectdv; +static glRectfPROC glRectf; +static glRectfvPROC glRectfv; +static glRectiPROC glRecti; +static glRectivPROC glRectiv; +static glRectsPROC glRects; +static glRectsvPROC glRectsv; +static glRenderModePROC glRenderMode; +static glRotatedPROC glRotated; +static glRotatefPROC glRotatef; +static glScaledPROC glScaled; +static glScalefPROC glScalef; +static glScissorPROC glScissor; +static glSelectBufferPROC glSelectBuffer; +static glShadeModelPROC glShadeModel; +static glStencilFuncPROC glStencilFunc; +static glStencilMaskPROC glStencilMask; +static glStencilOpPROC glStencilOp; +static glTexCoord1dPROC glTexCoord1d; +static glTexCoord1dvPROC glTexCoord1dv; +static glTexCoord1fPROC glTexCoord1f; +static glTexCoord1fvPROC glTexCoord1fv; +static glTexCoord1iPROC glTexCoord1i; +static glTexCoord1ivPROC glTexCoord1iv; +static glTexCoord1sPROC glTexCoord1s; +static glTexCoord1svPROC glTexCoord1sv; +static glTexCoord2dPROC glTexCoord2d; +static glTexCoord2dvPROC glTexCoord2dv; +static glTexCoord2fPROC glTexCoord2f; +static glTexCoord2fvPROC glTexCoord2fv; +static glTexCoord2iPROC glTexCoord2i; +static glTexCoord2ivPROC glTexCoord2iv; +static glTexCoord2sPROC glTexCoord2s; +static glTexCoord2svPROC glTexCoord2sv; +static glTexCoord3dPROC glTexCoord3d; +static glTexCoord3dvPROC glTexCoord3dv; +static glTexCoord3fPROC glTexCoord3f; +static glTexCoord3fvPROC glTexCoord3fv; +static glTexCoord3iPROC glTexCoord3i; +static glTexCoord3ivPROC glTexCoord3iv; +static glTexCoord3sPROC glTexCoord3s; +static glTexCoord3svPROC glTexCoord3sv; +static glTexCoord4dPROC glTexCoord4d; +static glTexCoord4dvPROC glTexCoord4dv; +static glTexCoord4fPROC glTexCoord4f; +static glTexCoord4fvPROC glTexCoord4fv; +static glTexCoord4iPROC glTexCoord4i; +static glTexCoord4ivPROC glTexCoord4iv; +static glTexCoord4sPROC glTexCoord4s; +static glTexCoord4svPROC glTexCoord4sv; +static glTexCoordPointerPROC glTexCoordPointer; +static glTexEnvfPROC glTexEnvf; +static glTexEnvfvPROC glTexEnvfv; +static glTexEnviPROC glTexEnvi; +static glTexEnvivPROC glTexEnviv; +static glTexGendPROC glTexGend; +static glTexGendvPROC glTexGendv; +static glTexGenfPROC glTexGenf; +static glTexGenfvPROC glTexGenfv; +static glTexGeniPROC glTexGeni; +static glTexGenivPROC glTexGeniv; +static glTexImage1DPROC glTexImage1D; +static glTexImage2DPROC glTexImage2D; +static glTexParameterfPROC glTexParameterf; +static glTexParameterfvPROC glTexParameterfv; +static glTexParameteriPROC glTexParameteri; +static glTexParameterivPROC glTexParameteriv; +static glTexSubImage1DPROC glTexSubImage1D; +static glTexSubImage2DPROC glTexSubImage2D; +static glTranslatedPROC glTranslated; +static glTranslatefPROC glTranslatef; +static glVertex2dPROC glVertex2d; +static glVertex2dvPROC glVertex2dv; +static glVertex2fPROC glVertex2f; +static glVertex2fvPROC glVertex2fv; +static glVertex2iPROC glVertex2i; +static glVertex2ivPROC glVertex2iv; +static glVertex2sPROC glVertex2s; +static glVertex2svPROC glVertex2sv; +static glVertex3dPROC glVertex3d; +static glVertex3dvPROC glVertex3dv; +static glVertex3fPROC glVertex3f; +static glVertex3fvPROC glVertex3fv; +static glVertex3iPROC glVertex3i; +static glVertex3ivPROC glVertex3iv; +static glVertex3sPROC glVertex3s; +static glVertex3svPROC glVertex3sv; +static glVertex4dPROC glVertex4d; +static glVertex4dvPROC glVertex4dv; +static glVertex4fPROC glVertex4f; +static glVertex4fvPROC glVertex4fv; +static glVertex4iPROC glVertex4i; +static glVertex4ivPROC glVertex4iv; +static glVertex4sPROC glVertex4s; +static glVertex4svPROC glVertex4sv; +static glVertexPointerPROC glVertexPointer; +static glViewportPROC glViewport; + +void extgl_InitOpenGL1_1(void) +{ + glAccum = (glAccumPROC) extgl_GetProcAddress("glAccum"); + glAlphaFunc = (glAlphaFuncPROC) extgl_GetProcAddress("glAlphaFunc"); + glAreTexturesResident = (glAreTexturesResidentPROC) extgl_GetProcAddress("glAreTexturesResident"); + glArrayElement = (glArrayElementPROC) extgl_GetProcAddress("glArrayElement"); + glBegin = (glBeginPROC) extgl_GetProcAddress("glBegin"); + glBindTexture = (glBindTexturePROC) extgl_GetProcAddress("glBindTexture"); + glBitmap = (glBitmapPROC) extgl_GetProcAddress("glBitmap"); + glBlendFunc = (glBlendFuncPROC) extgl_GetProcAddress("glBlendFunc"); + glCallList = (glCallListPROC) extgl_GetProcAddress("glCallList"); + glCallLists = (glCallListsPROC) extgl_GetProcAddress("glCallLists"); + glClear = (glClearPROC) extgl_GetProcAddress("glClear"); + glClearAccum = (glClearAccumPROC) extgl_GetProcAddress("glClearAccum"); + glClearColor = (glClearColorPROC) extgl_GetProcAddress("glClearColor"); + glClearDepth = (glClearDepthPROC) extgl_GetProcAddress("glClearDepth"); + glClearIndex = (glClearIndexPROC) extgl_GetProcAddress("glClearIndex"); + glClearStencil = (glClearStencilPROC) extgl_GetProcAddress("glClearStencil"); + glClipPlane = (glClipPlanePROC) extgl_GetProcAddress("glClipPlane"); + glColor3b = (glColor3bPROC) extgl_GetProcAddress("glColor3b"); + glColor3bv = (glColor3bvPROC) extgl_GetProcAddress("glColor3bv"); + glColor3d = (glColor3dPROC) extgl_GetProcAddress("glColor3d"); + glColor3dv = (glColor3dvPROC) extgl_GetProcAddress("glColor3dv"); + glColor3f = (glColor3fPROC) extgl_GetProcAddress("glColor3f"); + glColor3fv = (glColor3fvPROC) extgl_GetProcAddress("glColor3fv"); + glColor3i = (glColor3iPROC) extgl_GetProcAddress("glColor3i"); + glColor3iv = (glColor3ivPROC) extgl_GetProcAddress("glColor3iv"); + glColor3s = (glColor3sPROC) extgl_GetProcAddress("glColor3s"); + glColor3sv = (glColor3svPROC) extgl_GetProcAddress("glColor3sv"); + glColor3ub = (glColor3ubPROC) extgl_GetProcAddress("glColor3ub"); + glColor3ubv = (glColor3ubvPROC) extgl_GetProcAddress("glColor3ubv"); + glColor3ui = (glColor3uiPROC) extgl_GetProcAddress("glColor3ui"); + glColor3uiv = (glColor3uivPROC) extgl_GetProcAddress("glColor3uiv"); + glColor3us = (glColor3usPROC) extgl_GetProcAddress("glColor3us"); + glColor3usv = (glColor3usvPROC) extgl_GetProcAddress("glColor3usv"); + glColor4b = (glColor4bPROC) extgl_GetProcAddress("glColor4b"); + glColor4bv = (glColor4bvPROC) extgl_GetProcAddress("glColor4bv"); + glColor4d = (glColor4dPROC) extgl_GetProcAddress("glColor4d"); + glColor4dv = (glColor4dvPROC) extgl_GetProcAddress("glColor4dv"); + glColor4f = (glColor4fPROC) extgl_GetProcAddress("glColor4f"); + glColor4fv = (glColor4fvPROC) extgl_GetProcAddress("glColor4fv"); + glColor4i = (glColor4iPROC) extgl_GetProcAddress("glColor4i"); + glColor4iv = (glColor4ivPROC) extgl_GetProcAddress("glColor4iv"); + glColor4s = (glColor4sPROC) extgl_GetProcAddress("glColor4s"); + glColor4sv = (glColor4svPROC) extgl_GetProcAddress("glColor4sv"); + glColor4ub = (glColor4ubPROC) extgl_GetProcAddress("glColor4ub"); + glColor4ubv = (glColor4ubvPROC) extgl_GetProcAddress("glColor4ubv"); + glColor4ui = (glColor4uiPROC) extgl_GetProcAddress("glColor4ui"); + glColor4uiv = (glColor4uivPROC) extgl_GetProcAddress("glColor4uiv"); + glColor4us = (glColor4usPROC) extgl_GetProcAddress("glColor4us"); + glColor4usv = (glColor4usvPROC) extgl_GetProcAddress("glColor4usv"); + glColorMask = (glColorMaskPROC) extgl_GetProcAddress("glColorMask"); + glColorMaterial = (glColorMaterialPROC) extgl_GetProcAddress("glColorMaterial"); + glColorPointer = (glColorPointerPROC) extgl_GetProcAddress("glColorPointer"); + glCopyPixels = (glCopyPixelsPROC) extgl_GetProcAddress("glCopyPixels"); + glCopyTexImage1D = (glCopyTexImage1DPROC) extgl_GetProcAddress("glCopyTexImage1D"); + glCopyTexImage2D = (glCopyTexImage2DPROC) extgl_GetProcAddress("glCopyTexImage2D"); + glCopyTexSubImage1D = (glCopyTexSubImage1DPROC) extgl_GetProcAddress("glCopyTexSubImage1D"); + glCopyTexSubImage2D = (glCopyTexSubImage2DPROC) extgl_GetProcAddress("glCopyTexSubImage2D"); + glCullFace = (glCullFacePROC) extgl_GetProcAddress("glCullFace"); + glDeleteLists = (glDeleteListsPROC) extgl_GetProcAddress("glDeleteLists"); + glDeleteTextures = (glDeleteTexturesPROC) extgl_GetProcAddress("glDeleteTextures"); + glDepthFunc = (glDepthFuncPROC) extgl_GetProcAddress("glDepthFunc"); + glDepthMask = (glDepthMaskPROC) extgl_GetProcAddress("glDepthMask"); + glDepthRange = (glDepthRangePROC) extgl_GetProcAddress("glDepthRange"); + glDisable = (glDisablePROC) extgl_GetProcAddress("glDisable"); + glDisableClientState = (glDisableClientStatePROC) extgl_GetProcAddress("glDisableClientState"); + glDrawArrays = (glDrawArraysPROC) extgl_GetProcAddress("glDrawArrays"); + glDrawBuffer = (glDrawBufferPROC) extgl_GetProcAddress("glDrawBuffer"); + glDrawElements = (glDrawElementsPROC) extgl_GetProcAddress("glDrawElements"); + glDrawPixels = (glDrawPixelsPROC) extgl_GetProcAddress("glDrawPixels"); + glEdgeFlag = (glEdgeFlagPROC) extgl_GetProcAddress("glEdgeFlag"); + glEdgeFlagPointer = (glEdgeFlagPointerPROC) extgl_GetProcAddress("glEdgeFlagPointer"); + glEdgeFlagv = (glEdgeFlagvPROC) extgl_GetProcAddress("glEdgeFlagv"); + glEnable = (glEnablePROC) extgl_GetProcAddress("glEnable"); + glEnableClientState = (glEnableClientStatePROC) extgl_GetProcAddress("glEnableClientState"); + glEnd = (glEndPROC) extgl_GetProcAddress("glEnd"); + glEndList = (glEndListPROC) extgl_GetProcAddress("glEndList"); + glEvalCoord1d = (glEvalCoord1dPROC) extgl_GetProcAddress("glEvalCoord1d"); + glEvalCoord1dv = (glEvalCoord1dvPROC) extgl_GetProcAddress("glEvalCoord1dv"); + glEvalCoord1f = (glEvalCoord1fPROC) extgl_GetProcAddress("glEvalCoord1f"); + glEvalCoord1fv = (glEvalCoord1fvPROC) extgl_GetProcAddress("glEvalCoord1fv"); + glEvalCoord2d = (glEvalCoord2dPROC) extgl_GetProcAddress("glEvalCoord2d"); + glEvalCoord2dv = (glEvalCoord2dvPROC) extgl_GetProcAddress("glEvalCoord2dv"); + glEvalCoord2f = (glEvalCoord2fPROC) extgl_GetProcAddress("glEvalCoord2f"); + glEvalCoord2fv = (glEvalCoord2fvPROC) extgl_GetProcAddress("glEvalCoord2fv"); + glEvalMesh1 = (glEvalMesh1PROC) extgl_GetProcAddress("glEvalMesh1"); + glEvalMesh2 = (glEvalMesh2PROC) extgl_GetProcAddress("glEvalMesh2"); + glEvalPoint1 = (glEvalPoint1PROC) extgl_GetProcAddress("glEvalPoint1"); + glEvalPoint2 = (glEvalPoint2PROC) extgl_GetProcAddress("glEvalPoint2"); + glFeedbackBuffer = (glFeedbackBufferPROC) extgl_GetProcAddress("glFeedbackBuffer"); + glFinish = (glFinishPROC) extgl_GetProcAddress("glFinish"); + glFlush = (glFlushPROC) extgl_GetProcAddress("glFlush"); + glFogf = (glFogfPROC) extgl_GetProcAddress("glFogf"); + glFogfv = (glFogfvPROC) extgl_GetProcAddress("glFogfv"); + glFogi = (glFogiPROC) extgl_GetProcAddress("glFogi"); + glFogiv = (glFogivPROC) extgl_GetProcAddress("glFogiv"); + glFrontFace = (glFrontFacePROC) extgl_GetProcAddress("glFrontFace"); + glFrustum = (glFrustumPROC) extgl_GetProcAddress("glFrustum"); + glGenLists = (glGenListsPROC) extgl_GetProcAddress("glGenLists"); + glGenTextures = (glGenTexturesPROC) extgl_GetProcAddress("glGenTextures"); + glGetBooleanv = (glGetBooleanvPROC) extgl_GetProcAddress("glGetBooleanv"); + glGetClipPlane = (glGetClipPlanePROC) extgl_GetProcAddress("glGetClipPlane"); + glGetDoublev = (glGetDoublevPROC) extgl_GetProcAddress("glGetDoublev"); + glGetError = (glGetErrorPROC) extgl_GetProcAddress("glGetError"); + glGetFloatv = (glGetFloatvPROC) extgl_GetProcAddress("glGetFloatv"); + glGetIntegerv = (glGetIntegervPROC) extgl_GetProcAddress("glGetIntegerv"); + glGetLightfv = (glGetLightfvPROC) extgl_GetProcAddress("glGetLightfv"); + glGetLightiv = (glGetLightivPROC) extgl_GetProcAddress("glGetLightiv"); + glGetMapdv = (glGetMapdvPROC) extgl_GetProcAddress("glGetMapdv"); + glGetMapfv = (glGetMapfvPROC) extgl_GetProcAddress("glGetMapfv"); + glGetMapiv = (glGetMapivPROC) extgl_GetProcAddress("glGetMapiv"); + glGetMaterialfv = (glGetMaterialfvPROC) extgl_GetProcAddress("glGetMaterialfv"); + glGetMaterialiv = (glGetMaterialivPROC) extgl_GetProcAddress("glGetMaterialiv"); + glGetPixelMapfv = (glGetPixelMapfvPROC) extgl_GetProcAddress("glGetPixelMapfv"); + glGetPixelMapuiv = (glGetPixelMapuivPROC) extgl_GetProcAddress("glGetPixelMapuiv"); + glGetPixelMapusv = (glGetPixelMapusvPROC) extgl_GetProcAddress("glGetPixelMapusv"); + glGetPointerv = (glGetPointervPROC) extgl_GetProcAddress("glGetPointerv"); + glGetPolygonStipple = (glGetPolygonStipplePROC) extgl_GetProcAddress("glGetPolygonStipple"); + glGetString = (glGetStringPROC) extgl_GetProcAddress("glGetString"); + glGetTexEnvfv = (glGetTexEnvfvPROC) extgl_GetProcAddress("glGetTexEnvfv"); + glGetTexEnviv = (glGetTexEnvivPROC) extgl_GetProcAddress("glGetTexEnviv"); + glGetTexGendv = (glGetTexGendvPROC) extgl_GetProcAddress("glGetTexGendv"); + glGetTexGenfv = (glGetTexGenfvPROC) extgl_GetProcAddress("glGetTexGenfv"); + glGetTexGeniv = (glGetTexGenivPROC) extgl_GetProcAddress("glGetTexGeniv"); + glGetTexImage = (glGetTexImagePROC) extgl_GetProcAddress("glGetTexImage"); + glGetTexLevelParameterfv = (glGetTexLevelParameterfvPROC) extgl_GetProcAddress("glGetTexLevelParameterfv"); + glGetTexLevelParameteriv = (glGetTexLevelParameterivPROC) extgl_GetProcAddress("glGetTexLevelParameteriv"); + glGetTexParameterfv = (glGetTexParameterfvPROC) extgl_GetProcAddress("glGetTexParameterfv"); + glGetTexParameteriv = (glGetTexParameterivPROC) extgl_GetProcAddress("glGetTexParameteriv"); + glHint = (glHintPROC) extgl_GetProcAddress("glHint"); + glIndexMask = (glIndexMaskPROC) extgl_GetProcAddress("glIndexMask"); + glIndexPointer = (glIndexPointerPROC) extgl_GetProcAddress("glIndexPointer"); + glIndexd = (glIndexdPROC) extgl_GetProcAddress("glIndexd"); + glIndexdv = (glIndexdvPROC) extgl_GetProcAddress("glIndexdv"); + glIndexf = (glIndexfPROC) extgl_GetProcAddress("glIndexf"); + glIndexfv = (glIndexfvPROC) extgl_GetProcAddress("glIndexfv"); + glIndexi = (glIndexiPROC) extgl_GetProcAddress("glIndexi"); + glIndexiv = (glIndexivPROC) extgl_GetProcAddress("glIndexiv"); + glIndexs = (glIndexsPROC) extgl_GetProcAddress("glIndexs"); + glIndexsv = (glIndexsvPROC) extgl_GetProcAddress("glIndexsv"); + glIndexub = (glIndexubPROC) extgl_GetProcAddress("glIndexub"); + glIndexubv = (glIndexubvPROC) extgl_GetProcAddress("glIndexubv"); + glInitNames = (glInitNamesPROC) extgl_GetProcAddress("glInitNames"); + glInterleavedArrays = (glInterleavedArraysPROC) extgl_GetProcAddress("glInterleavedArrays"); + glIsEnabled = (glIsEnabledPROC) extgl_GetProcAddress("glIsEnabled"); + glIsList = (glIsListPROC) extgl_GetProcAddress("glIsList"); + glIsTexture = (glIsTexturePROC) extgl_GetProcAddress("glIsTexture"); + glLightModelf = (glLightModelfPROC) extgl_GetProcAddress("glLightModelf"); + glLightModelfv = (glLightModelfvPROC) extgl_GetProcAddress("glLightModelfv"); + glLightModeli = (glLightModeliPROC) extgl_GetProcAddress("glLightModeli"); + glLightModeliv = (glLightModelivPROC) extgl_GetProcAddress("glLightModeliv"); + glLightf = (glLightfPROC) extgl_GetProcAddress("glLightf"); + glLightfv = (glLightfvPROC) extgl_GetProcAddress("glLightfv"); + glLighti = (glLightiPROC) extgl_GetProcAddress("glLighti"); + glLightiv = (glLightivPROC) extgl_GetProcAddress("glLightiv"); + glLineStipple = (glLineStipplePROC) extgl_GetProcAddress("glLineStipple"); + glLineWidth = (glLineWidthPROC) extgl_GetProcAddress("glLineWidth"); + glListBase = (glListBasePROC) extgl_GetProcAddress("glListBase"); + glLoadIdentity = (glLoadIdentityPROC) extgl_GetProcAddress("glLoadIdentity"); + glLoadMatrixd = (glLoadMatrixdPROC) extgl_GetProcAddress("glLoadMatrixd"); + glLoadMatrixf = (glLoadMatrixfPROC) extgl_GetProcAddress("glLoadMatrixf"); + glLoadName = (glLoadNamePROC) extgl_GetProcAddress("glLoadName"); + glLogicOp = (glLogicOpPROC) extgl_GetProcAddress("glLogicOp"); + glMap1d = (glMap1dPROC) extgl_GetProcAddress("glMap1d"); + glMap1f = (glMap1fPROC) extgl_GetProcAddress("glMap1f"); + glMap2d = (glMap2dPROC) extgl_GetProcAddress("glMap2d"); + glMap2f = (glMap2fPROC) extgl_GetProcAddress("glMap2f"); + glMapGrid1d = (glMapGrid1dPROC) extgl_GetProcAddress("glMapGrid1d"); + glMapGrid1f = (glMapGrid1fPROC) extgl_GetProcAddress("glMapGrid1f"); + glMapGrid2d = (glMapGrid2dPROC) extgl_GetProcAddress("glMapGrid2d"); + glMapGrid2f = (glMapGrid2fPROC) extgl_GetProcAddress("glMapGrid2f"); + glMaterialf = (glMaterialfPROC) extgl_GetProcAddress("glMaterialf"); + glMaterialfv = (glMaterialfvPROC) extgl_GetProcAddress("glMaterialfv"); + glMateriali = (glMaterialiPROC) extgl_GetProcAddress("glMateriali"); + glMaterialiv = (glMaterialivPROC) extgl_GetProcAddress("glMaterialiv"); + glMatrixMode = (glMatrixModePROC) extgl_GetProcAddress("glMatrixMode"); + glMultMatrixd = (glMultMatrixdPROC) extgl_GetProcAddress("glMultMatrixd"); + glMultMatrixf = (glMultMatrixfPROC) extgl_GetProcAddress("glMultMatrixf"); + glNewList = (glNewListPROC) extgl_GetProcAddress("glNewList"); + glNormal3b = (glNormal3bPROC) extgl_GetProcAddress("glNormal3b"); + glNormal3bv = (glNormal3bvPROC) extgl_GetProcAddress("glNormal3bv"); + glNormal3d = (glNormal3dPROC) extgl_GetProcAddress("glNormal3d"); + glNormal3dv = (glNormal3dvPROC) extgl_GetProcAddress("glNormal3dv"); + glNormal3f = (glNormal3fPROC) extgl_GetProcAddress("glNormal3f"); + glNormal3fv = (glNormal3fvPROC) extgl_GetProcAddress("glNormal3fv"); + glNormal3i = (glNormal3iPROC) extgl_GetProcAddress("glNormal3i"); + glNormal3iv = (glNormal3ivPROC) extgl_GetProcAddress("glNormal3iv"); + glNormal3s = (glNormal3sPROC) extgl_GetProcAddress("glNormal3s"); + glNormal3sv = (glNormal3svPROC) extgl_GetProcAddress("glNormal3sv"); + glNormalPointer = (glNormalPointerPROC) extgl_GetProcAddress("glNormalPointer"); + glOrtho = (glOrthoPROC) extgl_GetProcAddress("glOrtho"); + glPassThrough = (glPassThroughPROC) extgl_GetProcAddress("glPassThrough"); + glPixelMapfv = (glPixelMapfvPROC) extgl_GetProcAddress("glPixelMapfv"); + glPixelMapuiv = (glPixelMapuivPROC) extgl_GetProcAddress("glPixelMapuiv"); + glPixelMapusv = (glPixelMapusvPROC) extgl_GetProcAddress("glPixelMapusv"); + glPixelStoref = (glPixelStorefPROC) extgl_GetProcAddress("glPixelStoref"); + glPixelStorei = (glPixelStoreiPROC) extgl_GetProcAddress("glPixelStorei"); + glPixelTransferf = (glPixelTransferfPROC) extgl_GetProcAddress("glPixelTransferf"); + glPixelTransferi = (glPixelTransferiPROC) extgl_GetProcAddress("glPixelTransferi"); + glPixelZoom = (glPixelZoomPROC) extgl_GetProcAddress("glPixelZoom"); + glPointSize = (glPointSizePROC) extgl_GetProcAddress("glPointSize"); + glPolygonMode = (glPolygonModePROC) extgl_GetProcAddress("glPolygonMode"); + glPolygonOffset = (glPolygonOffsetPROC) extgl_GetProcAddress("glPolygonOffset"); + glPolygonStipple = (glPolygonStipplePROC) extgl_GetProcAddress("glPolygonStipple"); + glPopAttrib = (glPopAttribPROC) extgl_GetProcAddress("glPopAttrib"); + glPopClientAttrib = (glPopClientAttribPROC) extgl_GetProcAddress("glPopClientAttrib"); + glPopMatrix = (glPopMatrixPROC) extgl_GetProcAddress("glPopMatrix"); + glPopName = (glPopNamePROC) extgl_GetProcAddress("glPopName"); + glPrioritizeTextures = (glPrioritizeTexturesPROC) extgl_GetProcAddress("glPrioritizeTextures"); + glPushAttrib = (glPushAttribPROC) extgl_GetProcAddress("glPushAttrib"); + glPushClientAttrib = (glPushClientAttribPROC) extgl_GetProcAddress("glPushClientAttrib"); + glPushMatrix = (glPushMatrixPROC) extgl_GetProcAddress("glPushMatrix"); + glPushName = (glPushNamePROC) extgl_GetProcAddress("glPushName"); + glRasterPos2d = (glRasterPos2dPROC) extgl_GetProcAddress("glRasterPos2d"); + glRasterPos2dv = (glRasterPos2dvPROC) extgl_GetProcAddress("glRasterPos2dv"); + glRasterPos2f = (glRasterPos2fPROC) extgl_GetProcAddress("glRasterPos2f"); + glRasterPos2fv = (glRasterPos2fvPROC) extgl_GetProcAddress("glRasterPos2fv"); + glRasterPos2i = (glRasterPos2iPROC) extgl_GetProcAddress("glRasterPos2i"); + glRasterPos2iv = (glRasterPos2ivPROC) extgl_GetProcAddress("glRasterPos2iv"); + glRasterPos2s = (glRasterPos2sPROC) extgl_GetProcAddress("glRasterPos2s"); + glRasterPos2sv = (glRasterPos2svPROC) extgl_GetProcAddress("glRasterPos2sv"); + glRasterPos3d = (glRasterPos3dPROC) extgl_GetProcAddress("glRasterPos3d"); + glRasterPos3dv = (glRasterPos3dvPROC) extgl_GetProcAddress("glRasterPos3dv"); + glRasterPos3f = (glRasterPos3fPROC) extgl_GetProcAddress("glRasterPos3f"); + glRasterPos3fv = (glRasterPos3fvPROC) extgl_GetProcAddress("glRasterPos3fv"); + glRasterPos3i = (glRasterPos3iPROC) extgl_GetProcAddress("glRasterPos3i"); + + glRasterPos3iv = (glRasterPos3ivPROC) extgl_GetProcAddress("glRasterPos3iv"); + glRasterPos3s = (glRasterPos3sPROC) extgl_GetProcAddress("glRasterPos3s"); + glRasterPos3sv = (glRasterPos3svPROC) extgl_GetProcAddress("glRasterPos3sv"); + glRasterPos4d = (glRasterPos4dPROC) extgl_GetProcAddress("glRasterPos4d"); + glRasterPos4dv = (glRasterPos4dvPROC) extgl_GetProcAddress("glRasterPos4dv"); + glRasterPos4f = (glRasterPos4fPROC) extgl_GetProcAddress("glRasterPos4f"); + glRasterPos4fv = (glRasterPos4fvPROC) extgl_GetProcAddress("glRasterPos4fv"); + glRasterPos4i = (glRasterPos4iPROC) extgl_GetProcAddress("glRasterPos4i"); + glRasterPos4iv = (glRasterPos4ivPROC) extgl_GetProcAddress("glRasterPos4iv"); + glRasterPos4s = (glRasterPos4sPROC) extgl_GetProcAddress("glRasterPos4s"); + glRasterPos4sv = (glRasterPos4svPROC) extgl_GetProcAddress("glRasterPos4sv"); + glReadBuffer = (glReadBufferPROC) extgl_GetProcAddress("glReadBuffer"); + glReadPixels = (glReadPixelsPROC) extgl_GetProcAddress("glReadPixels"); + glRectd = (glRectdPROC) extgl_GetProcAddress("glRectd"); + glRectdv = (glRectdvPROC) extgl_GetProcAddress("glRectdv"); + glRectf = (glRectfPROC) extgl_GetProcAddress("glRectf"); + glRectfv = (glRectfvPROC) extgl_GetProcAddress("glRectfv"); + glRecti = (glRectiPROC) extgl_GetProcAddress("glRecti"); + glRectiv = (glRectivPROC) extgl_GetProcAddress("glRectiv"); + glRects = (glRectsPROC) extgl_GetProcAddress("glRects"); + glRectsv = (glRectsvPROC) extgl_GetProcAddress("glRectsv"); + glRenderMode = (glRenderModePROC) extgl_GetProcAddress("glRenderMode"); + glRotated = (glRotatedPROC) extgl_GetProcAddress("glRotated"); + glRotatef = (glRotatefPROC) extgl_GetProcAddress("glRotatef"); + glScaled = (glScaledPROC) extgl_GetProcAddress("glScaled"); + glScalef = (glScalefPROC) extgl_GetProcAddress("glScalef"); + glScissor = (glScissorPROC) extgl_GetProcAddress("glScissor"); + glSelectBuffer = (glSelectBufferPROC) extgl_GetProcAddress("glSelectBuffer"); + glShadeModel = (glShadeModelPROC) extgl_GetProcAddress("glShadeModel"); + glStencilFunc = (glStencilFuncPROC) extgl_GetProcAddress("glStencilFunc"); + glStencilMask = (glStencilMaskPROC) extgl_GetProcAddress("glStencilMask"); + glStencilOp = (glStencilOpPROC) extgl_GetProcAddress("glStencilOp"); + glTexCoord1d = (glTexCoord1dPROC) extgl_GetProcAddress("glTexCoord1d"); + glTexCoord1dv = (glTexCoord1dvPROC) extgl_GetProcAddress("glTexCoord1dv"); + glTexCoord1f = (glTexCoord1fPROC) extgl_GetProcAddress("glTexCoord1f"); + glTexCoord1fv = (glTexCoord1fvPROC) extgl_GetProcAddress("glTexCoord1fv"); + glTexCoord1i = (glTexCoord1iPROC) extgl_GetProcAddress("glTexCoord1i"); + glTexCoord1iv = (glTexCoord1ivPROC) extgl_GetProcAddress("glTexCoord1iv"); + glTexCoord1s = (glTexCoord1sPROC) extgl_GetProcAddress("glTexCoord1s"); + glTexCoord1sv = (glTexCoord1svPROC) extgl_GetProcAddress("glTexCoord1sv"); + glTexCoord2d = (glTexCoord2dPROC) extgl_GetProcAddress("glTexCoord2d"); + glTexCoord2dv = (glTexCoord2dvPROC) extgl_GetProcAddress("glTexCoord2dv"); + glTexCoord2f = (glTexCoord2fPROC) extgl_GetProcAddress("glTexCoord2f"); + glTexCoord2fv = (glTexCoord2fvPROC) extgl_GetProcAddress("glTexCoord2fv"); + glTexCoord2i = (glTexCoord2iPROC) extgl_GetProcAddress("glTexCoord2i"); + glTexCoord2iv = (glTexCoord2ivPROC) extgl_GetProcAddress("glTexCoord2iv"); + glTexCoord2s = (glTexCoord2sPROC) extgl_GetProcAddress("glTexCoord2s"); + glTexCoord2sv = (glTexCoord2svPROC) extgl_GetProcAddress("glTexCoord2sv"); + glTexCoord3d = (glTexCoord3dPROC) extgl_GetProcAddress("glTexCoord3d"); + glTexCoord3dv = (glTexCoord3dvPROC) extgl_GetProcAddress("glTexCoord3dv"); + glTexCoord3f = (glTexCoord3fPROC) extgl_GetProcAddress("glTexCoord3f"); + glTexCoord3fv = (glTexCoord3fvPROC) extgl_GetProcAddress("glTexCoord3fv"); + glTexCoord3i = (glTexCoord3iPROC) extgl_GetProcAddress("glTexCoord3i"); + glTexCoord3iv = (glTexCoord3ivPROC) extgl_GetProcAddress("glTexCoord3iv"); + glTexCoord3s = (glTexCoord3sPROC) extgl_GetProcAddress("glTexCoord3s"); + glTexCoord3sv = (glTexCoord3svPROC) extgl_GetProcAddress("glTexCoord3sv"); + glTexCoord4d = (glTexCoord4dPROC) extgl_GetProcAddress("glTexCoord4d"); + glTexCoord4dv = (glTexCoord4dvPROC) extgl_GetProcAddress("glTexCoord4dv"); + glTexCoord4f = (glTexCoord4fPROC) extgl_GetProcAddress("glTexCoord4f"); + glTexCoord4fv = (glTexCoord4fvPROC) extgl_GetProcAddress("glTexCoord4fv"); + glTexCoord4i = (glTexCoord4iPROC) extgl_GetProcAddress("glTexCoord4i"); + glTexCoord4iv = (glTexCoord4ivPROC) extgl_GetProcAddress("glTexCoord4iv"); + glTexCoord4s = (glTexCoord4sPROC) extgl_GetProcAddress("glTexCoord4s"); + glTexCoord4sv = (glTexCoord4svPROC) extgl_GetProcAddress("glTexCoord4sv"); + glTexCoordPointer = (glTexCoordPointerPROC) extgl_GetProcAddress("glTexCoordPointer"); + glTexEnvf = (glTexEnvfPROC) extgl_GetProcAddress("glTexEnvf"); + glTexEnvfv = (glTexEnvfvPROC) extgl_GetProcAddress("glTexEnvfv"); + glTexEnvi = (glTexEnviPROC) extgl_GetProcAddress("glTexEnvi"); + glTexEnviv = (glTexEnvivPROC) extgl_GetProcAddress("glTexEnviv"); + glTexGend = (glTexGendPROC) extgl_GetProcAddress("glTexGend"); + glTexGendv = (glTexGendvPROC) extgl_GetProcAddress("glTexGendv"); + glTexGenf = (glTexGenfPROC) extgl_GetProcAddress("glTexGenf"); + glTexGenfv = (glTexGenfvPROC) extgl_GetProcAddress("glTexGenfv"); + glTexGeni = (glTexGeniPROC) extgl_GetProcAddress("glTexGeni"); + glTexGeniv = (glTexGenivPROC) extgl_GetProcAddress("glTexGeniv"); + glTexImage1D = (glTexImage1DPROC) extgl_GetProcAddress("glTexImage1D"); + glTexImage2D = (glTexImage2DPROC) extgl_GetProcAddress("glTexImage2D"); + glTexParameterf = (glTexParameterfPROC) extgl_GetProcAddress("glTexParameterf"); + glTexParameterfv = (glTexParameterfvPROC) extgl_GetProcAddress("glTexParameterfv"); + glTexParameteri = (glTexParameteriPROC) extgl_GetProcAddress("glTexParameteri"); + glTexParameteriv = (glTexParameterivPROC) extgl_GetProcAddress("glTexParameteriv"); + glTexSubImage1D = (glTexSubImage1DPROC) extgl_GetProcAddress("glTexSubImage1D"); + glTexSubImage2D = (glTexSubImage2DPROC) extgl_GetProcAddress("glTexSubImage2D"); + glTranslated = (glTranslatedPROC) extgl_GetProcAddress("glTranslated"); + glTranslatef = (glTranslatefPROC) extgl_GetProcAddress("glTranslatef"); + glVertex2d = (glVertex2dPROC) extgl_GetProcAddress("glVertex2d"); + glVertex2dv = (glVertex2dvPROC) extgl_GetProcAddress("glVertex2dv"); + glVertex2f = (glVertex2fPROC) extgl_GetProcAddress("glVertex2f"); + glVertex2fv = (glVertex2fvPROC) extgl_GetProcAddress("glVertex2fv"); + glVertex2i = (glVertex2iPROC) extgl_GetProcAddress("glVertex2i"); + glVertex2iv = (glVertex2ivPROC) extgl_GetProcAddress("glVertex2iv"); + glVertex2s = (glVertex2sPROC) extgl_GetProcAddress("glVertex2s"); + glVertex2sv = (glVertex2svPROC) extgl_GetProcAddress("glVertex2sv"); + glVertex3d = (glVertex3dPROC) extgl_GetProcAddress("glVertex3d"); + glVertex3dv = (glVertex3dvPROC) extgl_GetProcAddress("glVertex3dv"); + glVertex3f = (glVertex3fPROC) extgl_GetProcAddress("glVertex3f"); + glVertex3fv = (glVertex3fvPROC) extgl_GetProcAddress("glVertex3fv"); + glVertex3i = (glVertex3iPROC) extgl_GetProcAddress("glVertex3i"); + glVertex3iv = (glVertex3ivPROC) extgl_GetProcAddress("glVertex3iv"); + glVertex3s = (glVertex3sPROC) extgl_GetProcAddress("glVertex3s"); + glVertex3sv = (glVertex3svPROC) extgl_GetProcAddress("glVertex3sv"); + glVertex4d = (glVertex4dPROC) extgl_GetProcAddress("glVertex4d"); + glVertex4dv = (glVertex4dvPROC) extgl_GetProcAddress("glVertex4dv"); + glVertex4f = (glVertex4fPROC) extgl_GetProcAddress("glVertex4f"); + glVertex4fv = (glVertex4fvPROC) extgl_GetProcAddress("glVertex4fv"); + glVertex4i = (glVertex4iPROC) extgl_GetProcAddress("glVertex4i"); + glVertex4iv = (glVertex4ivPROC) extgl_GetProcAddress("glVertex4iv"); + glVertex4s = (glVertex4sPROC) extgl_GetProcAddress("glVertex4s"); + glVertex4sv = (glVertex4svPROC) extgl_GetProcAddress("glVertex4sv"); + glVertexPointer = (glVertexPointerPROC) extgl_GetProcAddress("glVertexPointer"); + glViewport = (glViewportPROC) extgl_GetProcAddress("glViewport"); +} + /* * Class: org_lwjgl_opengl_GL11 * Method: glAccum diff --git a/src/native/common/org_lwjgl_opengl_GL12.cpp b/src/native/common/org_lwjgl_opengl_GL12.cpp index 45936b2d..83eb8ddf 100644 --- a/src/native/common/org_lwjgl_opengl_GL12.cpp +++ b/src/native/common/org_lwjgl_opengl_GL12.cpp @@ -39,14 +39,141 @@ * @version $Revision$ */ -#ifdef _WIN32 -#include -#endif - #include "org_lwjgl_opengl_GL12.h" #include "checkGLerror.h" #include "extgl.h" +typedef void (APIENTRY * glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); +typedef void (APIENTRY * glBlendEquationPROC) (GLenum mode ); +typedef void (APIENTRY * glColorTablePROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table ); +typedef void (APIENTRY * glColorTableParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params); +typedef void (APIENTRY * glColorTableParameterivPROC) (GLenum target, GLenum pname, const GLint *params); +typedef void (APIENTRY * glCopyColorTablePROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); +typedef void (APIENTRY * glGetColorTablePROC) (GLenum target, GLenum format, GLenum type, GLvoid *table ); +typedef void (APIENTRY * glGetColorTableParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); +typedef void (APIENTRY * glGetColorTableParameterivPROC) (GLenum target, GLenum pname, GLint *params ); +typedef void (APIENTRY * glColorSubTablePROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data ); +typedef void (APIENTRY * glCopyColorSubTablePROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ); +typedef void (APIENTRY * glConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image ); +typedef void (APIENTRY * glConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image ); +typedef void (APIENTRY * glConvolutionParameterfPROC) (GLenum target, GLenum pname, GLfloat params ); +typedef void (APIENTRY * glConvolutionParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params ); +typedef void (APIENTRY * glConvolutionParameteriPROC) (GLenum target, GLenum pname, GLint params ); +typedef void (APIENTRY * glConvolutionParameterivPROC) (GLenum target, GLenum pname, const GLint *params ); +typedef void (APIENTRY * glCopyConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); +typedef void (APIENTRY * glCopyConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY * glGetConvolutionFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image ); +typedef void (APIENTRY * glGetConvolutionParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); +typedef void (APIENTRY * glGetConvolutionParameterivPROC) (GLenum target, GLenum pname, GLint *params ); +typedef void (APIENTRY * glSeparableFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column ); +typedef void (APIENTRY * glGetHistogramPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values ); +typedef void (APIENTRY * glGetHistogramParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); +typedef void (APIENTRY * glGetHistogramParameterivPROC) (GLenum target, GLenum pname, GLint *params ); +typedef void (APIENTRY * glGetMinmaxPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values ); +typedef void (APIENTRY * glGetMinmaxParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); +typedef void (APIENTRY * glGetMinmaxParameterivPROC) (GLenum target, GLenum pname, GLint *params ); +typedef void (APIENTRY * glHistogramPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ); +typedef void (APIENTRY * glResetHistogramPROC) (GLenum target ); +typedef void (APIENTRY * glMinmaxPROC) (GLenum target, GLenum internalformat, GLboolean sink ); +typedef void (APIENTRY * glResetMinmaxPROC) (GLenum target ); +typedef void (APIENTRY * glGetSeparableFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); +typedef void (APIENTRY * glDrawRangeElementsPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); +typedef void (APIENTRY * glTexImage3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels ); +typedef void (APIENTRY * glTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); +typedef void (APIENTRY * glCopyTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ); + +static glDrawRangeElementsPROC glDrawRangeElements; +static glTexImage3DPROC glTexImage3D; +static glTexSubImage3DPROC glTexSubImage3D; +static glCopyTexSubImage3DPROC glCopyTexSubImage3D; + +static glBlendColorPROC glBlendColor; +static glBlendEquationPROC glBlendEquation; +static glColorTablePROC glColorTable; +static glColorTableParameterfvPROC glColorTableParameterfv; +static glColorTableParameterivPROC glColorTableParameteriv; +static glCopyColorTablePROC glCopyColorTable; +static glGetColorTablePROC glGetColorTable; +static glGetColorTableParameterfvPROC glGetColorTableParameterfv; +static glGetColorTableParameterivPROC glGetColorTableParameteriv; +static glColorSubTablePROC glColorSubTable; +static glCopyColorSubTablePROC glCopyColorSubTable; +static glConvolutionFilter1DPROC glConvolutionFilter1D; +static glConvolutionFilter2DPROC glConvolutionFilter2D; +static glConvolutionParameterfPROC glConvolutionParameterf; +static glConvolutionParameterfvPROC glConvolutionParameterfv; +static glConvolutionParameteriPROC glConvolutionParameteri; +static glConvolutionParameterivPROC glConvolutionParameteriv; +static glCopyConvolutionFilter1DPROC glCopyConvolutionFilter1D; +static glCopyConvolutionFilter2DPROC glCopyConvolutionFilter2D; +static glGetConvolutionFilterPROC glGetConvolutionFilter; +static glGetConvolutionParameterfvPROC glGetConvolutionParameterfv; +static glGetConvolutionParameterivPROC glGetConvolutionParameteriv; +static glGetSeparableFilterPROC glGetSeparableFilter; +static glSeparableFilter2DPROC glSeparableFilter2D; +static glGetHistogramPROC glGetHistogram; +static glGetHistogramParameterfvPROC glGetHistogramParameterfv; +static glGetHistogramParameterivPROC glGetHistogramParameteriv; +static glGetMinmaxPROC glGetMinmax; +static glGetMinmaxParameterfvPROC glGetMinmaxParameterfv; +static glGetMinmaxParameterivPROC glGetMinmaxParameteriv; +static glHistogramPROC glHistogram; +static glMinmaxPROC glMinmax; +static glResetHistogramPROC glResetHistogram; +static glResetMinmaxPROC glResetMinmax; + +void extgl_InitOpenGL1_2(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.OpenGL12) + return; + glTexImage3D = (glTexImage3DPROC) extgl_GetProcAddress("glTexImage3D"); + glTexSubImage3D = (glTexSubImage3DPROC) extgl_GetProcAddress("glTexSubImage3D"); + glCopyTexSubImage3D = (glCopyTexSubImage3DPROC) extgl_GetProcAddress("glCopyTexSubImage3D"); + glDrawRangeElements = (glDrawRangeElementsPROC) extgl_GetProcAddress("glDrawRangeElements"); + EXTGL_SANITY_CHECK(env, ext_set, OpenGL12) +} + +void extgl_InitARBImaging(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.GL_ARB_imaging) + return; + glBlendColor = (glBlendColorPROC) extgl_GetProcAddress("glBlendColor"); + glBlendEquation = (glBlendEquationPROC) extgl_GetProcAddress("glBlendEquation"); + glColorTable = (glColorTablePROC) extgl_GetProcAddress("glColorTable"); + glColorTableParameterfv = (glColorTableParameterfvPROC) extgl_GetProcAddress("glColorTableParameterfv"); + glColorTableParameteriv = (glColorTableParameterivPROC) extgl_GetProcAddress("glColorTableParameteriv"); + glCopyColorTable = (glCopyColorTablePROC) extgl_GetProcAddress("glCopyColorTable"); + glGetColorTable = (glGetColorTablePROC) extgl_GetProcAddress("glGetColorTable"); + glGetColorTableParameterfv = (glGetColorTableParameterfvPROC) extgl_GetProcAddress("glGetColorTableParameterfv"); + glGetColorTableParameteriv = (glGetColorTableParameterivPROC) extgl_GetProcAddress("glGetColorTableParameteriv"); + glColorSubTable = (glColorSubTablePROC) extgl_GetProcAddress("glColorSubTable"); + glCopyColorSubTable = (glCopyColorSubTablePROC) extgl_GetProcAddress("glCopyColorSubTable"); + glConvolutionFilter1D = (glConvolutionFilter1DPROC) extgl_GetProcAddress("glConvolutionFilter1D"); + glConvolutionFilter2D = (glConvolutionFilter2DPROC) extgl_GetProcAddress("glConvolutionFilter2D"); + glConvolutionParameterf = (glConvolutionParameterfPROC) extgl_GetProcAddress("glConvolutionParameterf"); + glConvolutionParameterfv = (glConvolutionParameterfvPROC) extgl_GetProcAddress("glConvolutionParameterfv"); + glConvolutionParameteri = (glConvolutionParameteriPROC) extgl_GetProcAddress("glConvolutionParameteri"); + glConvolutionParameteriv = (glConvolutionParameterivPROC) extgl_GetProcAddress("glConvolutionParameteriv"); + glCopyConvolutionFilter1D = (glCopyConvolutionFilter1DPROC) extgl_GetProcAddress("glCopyConvolutionFilter1D"); + glCopyConvolutionFilter2D = (glCopyConvolutionFilter2DPROC) extgl_GetProcAddress("glCopyConvolutionFilter2D"); + glGetConvolutionFilter = (glGetConvolutionFilterPROC) extgl_GetProcAddress("glGetConvolutionFilter"); + glGetConvolutionParameterfv = (glGetConvolutionParameterfvPROC) extgl_GetProcAddress("glGetConvolutionParameterfv"); + glGetConvolutionParameteriv = (glGetConvolutionParameterivPROC) extgl_GetProcAddress("glGetConvolutionParameteriv"); + glGetSeparableFilter = (glGetSeparableFilterPROC) extgl_GetProcAddress("glGetSeparableFilter"); + glSeparableFilter2D = (glSeparableFilter2DPROC) extgl_GetProcAddress("glSeparableFilter2D"); + glGetHistogram = (glGetHistogramPROC) extgl_GetProcAddress("glGetHistogram"); + glGetHistogramParameterfv = (glGetHistogramParameterfvPROC) extgl_GetProcAddress("glGetHistogramParameterfv"); + glGetHistogramParameteriv = (glGetHistogramParameterivPROC) extgl_GetProcAddress("glGetHistogramParameteriv"); + glGetMinmax = (glGetMinmaxPROC) extgl_GetProcAddress("glGetMinmax"); + glGetMinmaxParameterfv = (glGetMinmaxParameterfvPROC) extgl_GetProcAddress("glGetMinmaxParameterfv"); + glGetMinmaxParameteriv = (glGetMinmaxParameterivPROC) extgl_GetProcAddress("glGetMinmaxParameteriv"); + glHistogram = (glHistogramPROC) extgl_GetProcAddress("glHistogram"); + glMinmax = (glMinmaxPROC) extgl_GetProcAddress("glMinmax"); + glResetHistogram = (glResetHistogramPROC) extgl_GetProcAddress("glResetHistogram"); + glResetMinmax = (glResetMinmaxPROC) extgl_GetProcAddress("glResetMinmax"); + EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_imaging) +} + /* * Class: org_lwjgl_opengl_GL12 * Method: glColorTable diff --git a/src/native/common/org_lwjgl_opengl_GL13.cpp b/src/native/common/org_lwjgl_opengl_GL13.cpp index 8c1c8f07..7c06d4c0 100644 --- a/src/native/common/org_lwjgl_opengl_GL13.cpp +++ b/src/native/common/org_lwjgl_opengl_GL13.cpp @@ -39,14 +39,163 @@ * @version $Revision$ */ -#ifdef _WIN32 -#include -#endif - #include "org_lwjgl_opengl_GL13.h" #include "checkGLerror.h" #include "extgl.h" +typedef void (APIENTRY * glActiveTexturePROC) (GLenum texture ); +typedef void (APIENTRY * glClientActiveTexturePROC) (GLenum texture ); +typedef void (APIENTRY * glCompressedTexImage1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexImage2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexImage3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glCompressedTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); +typedef void (APIENTRY * glGetCompressedTexImagePROC) (GLenum target, GLint lod, GLvoid *img ); +typedef void (APIENTRY * glMultiTexCoord1dPROC) (GLenum target, GLdouble s ); +typedef void (APIENTRY * glMultiTexCoord1dvPROC) (GLenum target, const GLdouble *v ); +typedef void (APIENTRY * glMultiTexCoord1fPROC) (GLenum target, GLfloat s ); +typedef void (APIENTRY * glMultiTexCoord1fvPROC) (GLenum target, const GLfloat *v ); +typedef void (APIENTRY * glMultiTexCoord1iPROC) (GLenum target, GLint s ); +typedef void (APIENTRY * glMultiTexCoord1ivPROC) (GLenum target, const GLint *v ); +typedef void (APIENTRY * glMultiTexCoord1sPROC) (GLenum target, GLshort s ); +typedef void (APIENTRY * glMultiTexCoord1svPROC) (GLenum target, const GLshort *v ); +typedef void (APIENTRY * glMultiTexCoord2dPROC) (GLenum target, GLdouble s, GLdouble t ); +typedef void (APIENTRY * glMultiTexCoord2dvPROC) (GLenum target, const GLdouble *v ); +typedef void (APIENTRY * glMultiTexCoord2fPROC) (GLenum target, GLfloat s, GLfloat t ); +typedef void (APIENTRY * glMultiTexCoord2fvPROC) (GLenum target, const GLfloat *v ); +typedef void (APIENTRY * glMultiTexCoord2iPROC) (GLenum target, GLint s, GLint t ); +typedef void (APIENTRY * glMultiTexCoord2ivPROC) (GLenum target, const GLint *v ); +typedef void (APIENTRY * glMultiTexCoord2sPROC) (GLenum target, GLshort s, GLshort t ); +typedef void (APIENTRY * glMultiTexCoord2svPROC) (GLenum target, const GLshort *v ); +typedef void (APIENTRY * glMultiTexCoord3dPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r ); +typedef void (APIENTRY * glMultiTexCoord3dvPROC) (GLenum target, const GLdouble *v ); +typedef void (APIENTRY * glMultiTexCoord3fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); +typedef void (APIENTRY * glMultiTexCoord3fvPROC) (GLenum target, const GLfloat *v ); +typedef void (APIENTRY * glMultiTexCoord3iPROC) (GLenum target, GLint s, GLint t, GLint r ); +typedef void (APIENTRY * glMultiTexCoord3ivPROC) (GLenum target, const GLint *v ); +typedef void (APIENTRY * glMultiTexCoord3sPROC) (GLenum target, GLshort s, GLshort t, GLshort r ); +typedef void (APIENTRY * glMultiTexCoord3svPROC) (GLenum target, const GLshort *v ); +typedef void (APIENTRY * glMultiTexCoord4dPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q ); +typedef void (APIENTRY * glMultiTexCoord4dvPROC) (GLenum target, const GLdouble *v ); +typedef void (APIENTRY * glMultiTexCoord4fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); +typedef void (APIENTRY * glMultiTexCoord4fvPROC) (GLenum target, const GLfloat *v ); +typedef void (APIENTRY * glMultiTexCoord4iPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q ); +typedef void (APIENTRY * glMultiTexCoord4ivPROC) (GLenum target, const GLint *v ); +typedef void (APIENTRY * glMultiTexCoord4sPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); +typedef void (APIENTRY * glMultiTexCoord4svPROC) (GLenum target, const GLshort *v ); +typedef void (APIENTRY * glLoadTransposeMatrixdPROC) (const GLdouble m[16] ); +typedef void (APIENTRY * glLoadTransposeMatrixfPROC) (const GLfloat m[16] ); +typedef void (APIENTRY * glMultTransposeMatrixdPROC) (const GLdouble m[16] ); +typedef void (APIENTRY * glMultTransposeMatrixfPROC) (const GLfloat m[16] ); +typedef void (APIENTRY * glSampleCoveragePROC) (GLclampf value, GLboolean invert ); + +static glActiveTexturePROC glActiveTexture; +static glClientActiveTexturePROC glClientActiveTexture; +static glMultiTexCoord1dPROC glMultiTexCoord1d; +static glMultiTexCoord1dvPROC glMultiTexCoord1dv; +static glMultiTexCoord1fPROC glMultiTexCoord1f; +static glMultiTexCoord1fvPROC glMultiTexCoord1fv; +static glMultiTexCoord1iPROC glMultiTexCoord1i; +static glMultiTexCoord1ivPROC glMultiTexCoord1iv; +static glMultiTexCoord1sPROC glMultiTexCoord1s; +static glMultiTexCoord1svPROC glMultiTexCoord1sv; +static glMultiTexCoord2dPROC glMultiTexCoord2d; +static glMultiTexCoord2dvPROC glMultiTexCoord2dv; +static glMultiTexCoord2fPROC glMultiTexCoord2f; +static glMultiTexCoord2fvPROC glMultiTexCoord2fv; +static glMultiTexCoord2iPROC glMultiTexCoord2i; +static glMultiTexCoord2ivPROC glMultiTexCoord2iv; +static glMultiTexCoord2sPROC glMultiTexCoord2s; +static glMultiTexCoord2svPROC glMultiTexCoord2sv; +static glMultiTexCoord3dPROC glMultiTexCoord3d; +static glMultiTexCoord3dvPROC glMultiTexCoord3dv; +static glMultiTexCoord3fPROC glMultiTexCoord3f; +static glMultiTexCoord3fvPROC glMultiTexCoord3fv; +static glMultiTexCoord3iPROC glMultiTexCoord3i; +static glMultiTexCoord3ivPROC glMultiTexCoord3iv; +static glMultiTexCoord3sPROC glMultiTexCoord3s; +static glMultiTexCoord3svPROC glMultiTexCoord3sv; +static glMultiTexCoord4dPROC glMultiTexCoord4d; +static glMultiTexCoord4dvPROC glMultiTexCoord4dv; +static glMultiTexCoord4fPROC glMultiTexCoord4f; +static glMultiTexCoord4fvPROC glMultiTexCoord4fv; +static glMultiTexCoord4iPROC glMultiTexCoord4i; +static glMultiTexCoord4ivPROC glMultiTexCoord4iv; +static glMultiTexCoord4sPROC glMultiTexCoord4s; +static glMultiTexCoord4svPROC glMultiTexCoord4sv; +static glLoadTransposeMatrixfPROC glLoadTransposeMatrixf; +static glLoadTransposeMatrixdPROC glLoadTransposeMatrixd; +static glMultTransposeMatrixfPROC glMultTransposeMatrixf; +static glMultTransposeMatrixdPROC glMultTransposeMatrixd; +static glCompressedTexImage3DPROC glCompressedTexImage3D; +static glCompressedTexImage2DPROC glCompressedTexImage2D; +static glCompressedTexImage1DPROC glCompressedTexImage1D; +static glCompressedTexSubImage3DPROC glCompressedTexSubImage3D; +static glCompressedTexSubImage2DPROC glCompressedTexSubImage2D; +static glCompressedTexSubImage1DPROC glCompressedTexSubImage1D; +static glGetCompressedTexImagePROC glGetCompressedTexImage; +static glSampleCoveragePROC glSampleCoverage; + +void extgl_InitOpenGL1_3(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.OpenGL13) + return; + glActiveTexture = (glActiveTexturePROC) extgl_GetProcAddress("glActiveTexture"); + glClientActiveTexture = (glClientActiveTexturePROC) extgl_GetProcAddress("glClientActiveTexture"); + + glMultiTexCoord1d = (glMultiTexCoord1dPROC) extgl_GetProcAddress("glMultiTexCoord1d"); + glMultiTexCoord1dv = (glMultiTexCoord1dvPROC) extgl_GetProcAddress("glMultiTexCoord1dv"); + glMultiTexCoord1f = (glMultiTexCoord1fPROC) extgl_GetProcAddress("glMultiTexCoord1f"); + glMultiTexCoord1fv = (glMultiTexCoord1fvPROC) extgl_GetProcAddress("glMultiTexCoord1fv"); + glMultiTexCoord1i = (glMultiTexCoord1iPROC) extgl_GetProcAddress("glMultiTexCoord1i"); + glMultiTexCoord1iv = (glMultiTexCoord1ivPROC) extgl_GetProcAddress("glMultiTexCoord1iv"); + glMultiTexCoord1s = (glMultiTexCoord1sPROC) extgl_GetProcAddress("glMultiTexCoord1s"); + glMultiTexCoord1sv = (glMultiTexCoord1svPROC) extgl_GetProcAddress("glMultiTexCoord1sv"); + + glMultiTexCoord2d = (glMultiTexCoord2dPROC) extgl_GetProcAddress("glMultiTexCoord2d"); + glMultiTexCoord2dv = (glMultiTexCoord2dvPROC) extgl_GetProcAddress("glMultiTexCoord2dv"); + glMultiTexCoord2f = (glMultiTexCoord2fPROC) extgl_GetProcAddress("glMultiTexCoord2f"); + glMultiTexCoord2fv = (glMultiTexCoord2fvPROC) extgl_GetProcAddress("glMultiTexCoord2fv"); + glMultiTexCoord2i = (glMultiTexCoord2iPROC) extgl_GetProcAddress("glMultiTexCoord2i"); + glMultiTexCoord2iv = (glMultiTexCoord2ivPROC) extgl_GetProcAddress("glMultiTexCoord2iv"); + glMultiTexCoord2s = (glMultiTexCoord2sPROC) extgl_GetProcAddress("glMultiTexCoord2s"); + glMultiTexCoord2sv = (glMultiTexCoord2svPROC) extgl_GetProcAddress("glMultiTexCoord2sv"); + + glMultiTexCoord3d = (glMultiTexCoord3dPROC) extgl_GetProcAddress("glMultiTexCoord3d"); + glMultiTexCoord3dv = (glMultiTexCoord3dvPROC) extgl_GetProcAddress("glMultiTexCoord3dv"); + glMultiTexCoord3f = (glMultiTexCoord3fPROC) extgl_GetProcAddress("glMultiTexCoord3f"); + glMultiTexCoord3fv = (glMultiTexCoord3fvPROC) extgl_GetProcAddress("glMultiTexCoord3fv"); + glMultiTexCoord3i = (glMultiTexCoord3iPROC) extgl_GetProcAddress("glMultiTexCoord3i"); + glMultiTexCoord3iv = (glMultiTexCoord3ivPROC) extgl_GetProcAddress("glMultiTexCoord3iv"); + glMultiTexCoord3s = (glMultiTexCoord3sPROC) extgl_GetProcAddress("glMultiTexCoord3s"); + glMultiTexCoord3sv = (glMultiTexCoord3svPROC) extgl_GetProcAddress("glMultiTexCoord3sv"); + + glMultiTexCoord4d = (glMultiTexCoord4dPROC) extgl_GetProcAddress("glMultiTexCoord4d"); + glMultiTexCoord4dv = (glMultiTexCoord4dvPROC) extgl_GetProcAddress("glMultiTexCoord4dv"); + glMultiTexCoord4f = (glMultiTexCoord4fPROC) extgl_GetProcAddress("glMultiTexCoord4f"); + glMultiTexCoord4fv = (glMultiTexCoord4fvPROC) extgl_GetProcAddress("glMultiTexCoord4fv"); + glMultiTexCoord4i = (glMultiTexCoord4iPROC) extgl_GetProcAddress("glMultiTexCoord4i"); + glMultiTexCoord4iv = (glMultiTexCoord4ivPROC) extgl_GetProcAddress("glMultiTexCoord4iv"); + glMultiTexCoord4s = (glMultiTexCoord4sPROC) extgl_GetProcAddress("glMultiTexCoord4s"); + glMultiTexCoord4sv = (glMultiTexCoord4svPROC) extgl_GetProcAddress("glMultiTexCoord4sv"); + + glLoadTransposeMatrixf = (glLoadTransposeMatrixfPROC) extgl_GetProcAddress("glLoadTransposeMatrixf"); + glLoadTransposeMatrixd = (glLoadTransposeMatrixdPROC) extgl_GetProcAddress("glLoadTransposeMatrixd"); + glMultTransposeMatrixf = (glMultTransposeMatrixfPROC) extgl_GetProcAddress("glMultTransposeMatrixf"); + glMultTransposeMatrixd = (glMultTransposeMatrixdPROC) extgl_GetProcAddress("glMultTransposeMatrixd"); + glCompressedTexImage3D = (glCompressedTexImage3DPROC) extgl_GetProcAddress("glCompressedTexImage3D"); + glCompressedTexImage2D = (glCompressedTexImage2DPROC) extgl_GetProcAddress("glCompressedTexImage2D"); + glCompressedTexImage1D = (glCompressedTexImage1DPROC) extgl_GetProcAddress("glCompressedTexImage1D"); + glCompressedTexSubImage3D = (glCompressedTexSubImage3DPROC) extgl_GetProcAddress("glCompressedTexSubImage3D"); + glCompressedTexSubImage2D = (glCompressedTexSubImage2DPROC) extgl_GetProcAddress("glCompressedTexSubImage2D"); + glCompressedTexSubImage1D = (glCompressedTexSubImage1DPROC) extgl_GetProcAddress("glCompressedTexSubImage1D"); + glGetCompressedTexImage = (glGetCompressedTexImagePROC) extgl_GetProcAddress("glGetCompressedTexImage"); + + glSampleCoverage = (glSampleCoveragePROC) extgl_GetProcAddress("glSampleCoverage"); + EXTGL_SANITY_CHECK(env, ext_set, OpenGL13) +} + /* * Class: org_lwjgl_opengl_GL13 * Method: glActiveTexture diff --git a/src/native/common/org_lwjgl_opengl_GL14.cpp b/src/native/common/org_lwjgl_opengl_GL14.cpp index 764a1bba..d2ec58f5 100644 --- a/src/native/common/org_lwjgl_opengl_GL14.cpp +++ b/src/native/common/org_lwjgl_opengl_GL14.cpp @@ -39,14 +39,154 @@ * @version $Revision$ */ -#ifdef _WIN32 -#include -#endif - #include "org_lwjgl_opengl_GL14.h" #include "checkGLerror.h" #include "extgl.h" +typedef void (APIENTRY * glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); +typedef void (APIENTRY * glBlendEquationPROC) (GLenum mode ); +typedef void (APIENTRY * glFogCoordfPROC) (GLfloat coord); +typedef void (APIENTRY * glFogCoordfvPROC) (const GLfloat *coord); +typedef void (APIENTRY * glFogCoorddPROC) (GLdouble coord); +typedef void (APIENTRY * glFogCoorddvPROC) (const GLdouble *coord); +typedef void (APIENTRY * glFogCoordPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glMultiDrawArraysPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); +typedef void (APIENTRY * glMultiDrawElementsPROC) (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount); +typedef void (APIENTRY * glPointParameterfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY * glPointParameterfvPROC) (GLenum pname, GLfloat *params); +typedef void (APIENTRY * glSecondaryColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (APIENTRY * glSecondaryColor3bvPROC) (const GLbyte *v); +typedef void (APIENTRY * glSecondaryColor3dPROC) (GLdouble red, GLdouble green, GLdouble blue); +typedef void (APIENTRY * glSecondaryColor3dvPROC) (const GLdouble *v); +typedef void (APIENTRY * glSecondaryColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY * glSecondaryColor3fvPROC) (const GLfloat *v); +typedef void (APIENTRY * glSecondaryColor3iPROC) (GLint red, GLint green, GLint blue); +typedef void (APIENTRY * glSecondaryColor3ivPROC) (const GLint *v); +typedef void (APIENTRY * glSecondaryColor3sPROC) (GLshort red, GLshort green, GLshort blue); +typedef void (APIENTRY * glSecondaryColor3svPROC) (const GLshort *v); +typedef void (APIENTRY * glSecondaryColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY * glSecondaryColor3ubvPROC) (const GLubyte *v); +typedef void (APIENTRY * glSecondaryColor3uiPROC) (GLuint red, GLuint green, GLuint blue); +typedef void (APIENTRY * glSecondaryColor3uivPROC) (const GLuint *v); +typedef void (APIENTRY * glSecondaryColor3usPROC) (GLushort red, GLushort green, GLushort blue); +typedef void (APIENTRY * glSecondaryColor3usvPROC) (const GLushort *v); +typedef void (APIENTRY * glSecondaryColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY * glBlendFuncSeparatePROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +typedef void (APIENTRY * glWindowPos2dPROC) (GLdouble x, GLdouble y); +typedef void (APIENTRY * glWindowPos2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY * glWindowPos2iPROC) (GLint x, GLint y); +typedef void (APIENTRY * glWindowPos2sPROC) (GLshort x, GLshort y); +typedef void (APIENTRY * glWindowPos2dvPROC) (const GLdouble *p); +typedef void (APIENTRY * glWindowPos2fvPROC) (const GLfloat *p); +typedef void (APIENTRY * glWindowPos2ivPROC) (const GLint *p); +typedef void (APIENTRY * glWindowPos2svPROC) (const GLshort *p); +typedef void (APIENTRY * glWindowPos3dPROC) (GLdouble x, GLdouble y, GLdouble z); +typedef void (APIENTRY * glWindowPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY * glWindowPos3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY * glWindowPos3sPROC) (GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY * glWindowPos3dvPROC) (const GLdouble *p); +typedef void (APIENTRY * glWindowPos3fvPROC) (const GLfloat *p); +typedef void (APIENTRY * glWindowPos3ivPROC) (const GLint *p); +typedef void (APIENTRY * glWindowPos3svPROC) (const GLshort *p); + +static glFogCoordfPROC glFogCoordf; +static glFogCoordfvPROC glFogCoordfv; +static glFogCoorddPROC glFogCoordd; +static glFogCoorddvPROC glFogCoorddv; +static glFogCoordPointerPROC glFogCoordPointer; +static glMultiDrawArraysPROC glMultiDrawArrays; +static glMultiDrawElementsPROC glMultiDrawElements; +static glPointParameterfPROC glPointParameterf; +static glPointParameterfvPROC glPointParameterfv; +static glSecondaryColor3bPROC glSecondaryColor3b; +static glSecondaryColor3bvPROC glSecondaryColor3bv; +static glSecondaryColor3dPROC glSecondaryColor3d; +static glSecondaryColor3dvPROC glSecondaryColor3dv; +static glSecondaryColor3fPROC glSecondaryColor3f; +static glSecondaryColor3fvPROC glSecondaryColor3fv; +static glSecondaryColor3iPROC glSecondaryColor3i; +static glSecondaryColor3ivPROC glSecondaryColor3iv; +static glSecondaryColor3sPROC glSecondaryColor3s; +static glSecondaryColor3svPROC glSecondaryColor3sv; +static glSecondaryColor3ubPROC glSecondaryColor3ub; +static glSecondaryColor3ubvPROC glSecondaryColor3ubv; +static glSecondaryColor3uiPROC glSecondaryColor3ui; +static glSecondaryColor3uivPROC glSecondaryColor3uiv; +static glSecondaryColor3usPROC glSecondaryColor3us; +static glSecondaryColor3usvPROC glSecondaryColor3usv; +static glSecondaryColorPointerPROC glSecondaryColorPointer; +static glBlendFuncSeparatePROC glBlendFuncSeparate; +static glWindowPos2dPROC glWindowPos2d; +static glWindowPos2fPROC glWindowPos2f; +static glWindowPos2iPROC glWindowPos2i; +static glWindowPos2sPROC glWindowPos2s; +static glWindowPos2dvPROC glWindowPos2dv; +static glWindowPos2fvPROC glWindowPos2fv; +static glWindowPos2ivPROC glWindowPos2iv; +static glWindowPos2svPROC glWindowPos2sv; +static glWindowPos3dPROC glWindowPos3d; +static glWindowPos3fPROC glWindowPos3f; +static glWindowPos3iPROC glWindowPos3i; +static glWindowPos3sPROC glWindowPos3s; +static glWindowPos3dvPROC glWindowPos3dv; +static glWindowPos3fvPROC glWindowPos3fv; +static glWindowPos3ivPROC glWindowPos3iv; +static glWindowPos3svPROC glWindowPos3sv; +static glBlendColorPROC glBlendColor; +static glBlendEquationPROC glBlendEquation; + +void extgl_InitOpenGL1_4(JNIEnv *env, jobject ext_set) +{ + if (!extgl_Extensions.OpenGL14) + return; + glBlendColor = (glBlendColorPROC) extgl_GetProcAddress("glBlendColor"); + glBlendEquation = (glBlendEquationPROC) extgl_GetProcAddress("glBlendEquation"); + glFogCoordf = (glFogCoordfPROC) extgl_GetProcAddress("glFogCoordf"); + glFogCoordfv = (glFogCoordfvPROC) extgl_GetProcAddress("glFogCoordfv"); + glFogCoordd = (glFogCoorddPROC) extgl_GetProcAddress("glFogCoordd"); + glFogCoorddv = (glFogCoorddvPROC) extgl_GetProcAddress("glFogCoorddv"); + glFogCoordPointer = (glFogCoordPointerPROC) extgl_GetProcAddress("glFogCoordPointer"); + glMultiDrawArrays = (glMultiDrawArraysPROC) extgl_GetProcAddress("glMultiDrawArrays"); + glMultiDrawElements = (glMultiDrawElementsPROC) extgl_GetProcAddress("glMultiDrawElements"); + glPointParameterf = (glPointParameterfPROC) extgl_GetProcAddress("glPointParameterf"); + glPointParameterfv = (glPointParameterfvPROC) extgl_GetProcAddress("glPointParameterfv"); + glSecondaryColor3b = (glSecondaryColor3bPROC) extgl_GetProcAddress("glSecondaryColor3b"); + glSecondaryColor3bv = (glSecondaryColor3bvPROC) extgl_GetProcAddress("glSecondaryColor3bv"); + glSecondaryColor3d = (glSecondaryColor3dPROC) extgl_GetProcAddress("glSecondaryColor3d"); + glSecondaryColor3dv = (glSecondaryColor3dvPROC) extgl_GetProcAddress("glSecondaryColor3dv"); + glSecondaryColor3f = (glSecondaryColor3fPROC) extgl_GetProcAddress("glSecondaryColor3f"); + glSecondaryColor3fv = (glSecondaryColor3fvPROC) extgl_GetProcAddress("glSecondaryColor3fv"); + glSecondaryColor3i = (glSecondaryColor3iPROC) extgl_GetProcAddress("glSecondaryColor3i"); + glSecondaryColor3iv = (glSecondaryColor3ivPROC) extgl_GetProcAddress("glSecondaryColor3iv"); + glSecondaryColor3s = (glSecondaryColor3sPROC) extgl_GetProcAddress("glSecondaryColor3s"); + glSecondaryColor3sv = (glSecondaryColor3svPROC) extgl_GetProcAddress("glSecondaryColor3sv"); + glSecondaryColor3ub = (glSecondaryColor3ubPROC) extgl_GetProcAddress("glSecondaryColor3ub"); + glSecondaryColor3ubv = (glSecondaryColor3ubvPROC) extgl_GetProcAddress("glSecondaryColor3ubv"); + glSecondaryColor3ui = (glSecondaryColor3uiPROC) extgl_GetProcAddress("glSecondaryColor3ui"); + glSecondaryColor3uiv = (glSecondaryColor3uivPROC) extgl_GetProcAddress("glSecondaryColor3uiv"); + glSecondaryColor3us = (glSecondaryColor3usPROC) extgl_GetProcAddress("glSecondaryColor3us"); + glSecondaryColor3usv = (glSecondaryColor3usvPROC) extgl_GetProcAddress("glSecondaryColor3usv"); + glSecondaryColorPointer = (glSecondaryColorPointerPROC) extgl_GetProcAddress("glSecondaryColorPointer"); + glBlendFuncSeparate = (glBlendFuncSeparatePROC) extgl_GetProcAddress("glBlendFuncSeparate"); + glWindowPos2d = (glWindowPos2dPROC) extgl_GetProcAddress("glWindowPos2d"); + glWindowPos2f = (glWindowPos2fPROC) extgl_GetProcAddress("glWindowPos2f"); + glWindowPos2i = (glWindowPos2iPROC) extgl_GetProcAddress("glWindowPos2i"); + glWindowPos2s = (glWindowPos2sPROC) extgl_GetProcAddress("glWindowPos2s"); + glWindowPos2dv = (glWindowPos2dvPROC) extgl_GetProcAddress("glWindowPos2dv"); + glWindowPos2fv = (glWindowPos2fvPROC) extgl_GetProcAddress("glWindowPos2fv"); + glWindowPos2iv = (glWindowPos2ivPROC) extgl_GetProcAddress("glWindowPos2iv"); + glWindowPos2sv = (glWindowPos2svPROC) extgl_GetProcAddress("glWindowPos2sv"); + glWindowPos3d = (glWindowPos3dPROC) extgl_GetProcAddress("glWindowPos3d"); + glWindowPos3f = (glWindowPos3fPROC) extgl_GetProcAddress("glWindowPos3f"); + glWindowPos3i = (glWindowPos3iPROC) extgl_GetProcAddress("glWindowPos3i"); + glWindowPos3s = (glWindowPos3sPROC) extgl_GetProcAddress("glWindowPos3s"); + glWindowPos3dv = (glWindowPos3dvPROC) extgl_GetProcAddress("glWindowPos3dv"); + glWindowPos3fv = (glWindowPos3fvPROC) extgl_GetProcAddress("glWindowPos3fv"); + glWindowPos3iv = (glWindowPos3ivPROC) extgl_GetProcAddress("glWindowPos3iv"); + glWindowPos3sv = (glWindowPos3svPROC) extgl_GetProcAddress("glWindowPos3sv"); + EXTGL_SANITY_CHECK(env, ext_set, OpenGL14) +} + /* * Class: org_lwjgl_opengl_GL14 * Method: glFogCoordf