ATI_separate_stencil support added
This commit is contained in:
parent
7d35ee2744
commit
a232c6fbfb
|
@ -813,6 +813,10 @@ public abstract class GL extends CoreGL14 implements GLConstants {
|
|||
|
||||
public static native void glPNTrianglesiATI(int pname, int param);
|
||||
|
||||
public static native void glStencilOpSeparateATI(int face, int sfail, int dpfail, int dppass);
|
||||
|
||||
public static native void glStencilFuncSeparateATI(int frontfunc, int backfunc, int ref, int mask);
|
||||
|
||||
public static native void glPointParameterfARB(int pname, float param);
|
||||
|
||||
public static native void glPointParameterfEXT(int pname, float param);
|
||||
|
|
|
@ -936,6 +936,13 @@ glGetMapAttribParameterfvNVPROC glGetMapAttribParameterfvNV = NULL;
|
|||
glEvalMapsNVPROC glEvalMapsNV = NULL;
|
||||
#endif /* GL_NV_evaluators */
|
||||
|
||||
/* ATI_separate_stencil */
|
||||
|
||||
#ifdef GL_ATI_separate_stencil
|
||||
glStencilOpSeparateATIPROC glStencilOpSeparateATI = NULL;
|
||||
glStencilFuncSeparateATIPROC glStencilFuncSeparateATI = NULL;
|
||||
#endif /* GL_ATI_separate_stencil */
|
||||
|
||||
/* ATI_pn_triangles */
|
||||
|
||||
#ifdef GL_ATI_pn_triangles
|
||||
|
@ -2094,6 +2101,16 @@ void extgl_InitATIPNTriangles()
|
|||
#endif
|
||||
}
|
||||
|
||||
void extgl_InitATISeparateStencil()
|
||||
{
|
||||
#ifdef GL_ATI_separate_stencil
|
||||
if (!extgl_Extensions.ATI_separate_stencil)
|
||||
return;
|
||||
glStencilOpSeparateATI = (glStencilOpSeparateATIPROC)extgl_GetProcAddress("glStencilOpSeparateATI");
|
||||
glStencilFuncSeparateATI = (glStencilFuncSeparateATIPROC)extgl_GetProcAddress("glStencilFuncSeparateATI");
|
||||
#endif
|
||||
}
|
||||
|
||||
void extgl_InitNVEvaluators()
|
||||
{
|
||||
#ifdef GL_NV_evaluators
|
||||
|
@ -3163,6 +3180,7 @@ void extgl_InitSupportedExtensions()
|
|||
extgl_Extensions.ATI_fragment_shader = GLQueryExtension("GL_ATI_fragment_shader");
|
||||
extgl_Extensions.ATI_pn_triangles = GLQueryExtension("GL_ATI_pn_triangles");
|
||||
extgl_Extensions.ATI_point_cull_mode = GLQueryExtension("GL_ATI_point_cull_mode");
|
||||
extgl_Extensions.ATI_separate_stencil = GLQueryExtension("GL_ATI_separate_stencil");
|
||||
extgl_Extensions.ATI_text_fragment_shader = GLQueryExtension("GL_ATI_text_fragment_shader");
|
||||
extgl_Extensions.ATI_texture_mirror_once = GLQueryExtension("GL_ATI_texture_mirror_once");
|
||||
extgl_Extensions.ATI_vertex_array_object = GLQueryExtension("GL_ATI_vertex_array_object");
|
||||
|
@ -3228,6 +3246,7 @@ int extgl_Initialize()
|
|||
extgl_InitNVFence();
|
||||
extgl_InitNVRegisterCombiners2();
|
||||
extgl_InitATIPNTriangles();
|
||||
extgl_InitATISeparateStencil();
|
||||
extgl_InitARBPointParameters();
|
||||
extgl_InitARBVertexBlend();
|
||||
extgl_InitEXTMultiDrawArrays();
|
||||
|
|
|
@ -5443,6 +5443,26 @@ extern glPrimitiveRestartIndexNVPROC glPrimitiveRestartIndexNV;
|
|||
|
||||
#endif /* GL_ARB_fragment_program */
|
||||
|
||||
/*-------------------------------------------------------------------*/
|
||||
/*------------ATI_separate_stencil---------------------------------------*/
|
||||
/*-------------------------------------------------------------------*/
|
||||
|
||||
#ifndef GL_ATI_separate_stencil
|
||||
#define GL_ATI_separate_stencil 1
|
||||
|
||||
#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;
|
||||
|
||||
#endif /* GL_ATI_separate_stencil */
|
||||
|
||||
/*-------------------------------------------------------------------*/
|
||||
/*------------GL_ATI_TEXT_FRAGMENT_SHADER----------------------------*/
|
||||
/*-------------------------------------------------------------------*/
|
||||
|
@ -5883,6 +5903,7 @@ struct ExtensionTypes
|
|||
int ATI_fragment_shader;
|
||||
int ATI_pn_triangles;
|
||||
int ATI_point_cull_mode;
|
||||
int ATI_separate_stencil;
|
||||
int ATI_text_fragment_shader;
|
||||
int ATI_texture_mirror_once;
|
||||
int ATI_vertex_array_object;
|
||||
|
|
|
@ -1910,6 +1910,32 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glPNTrianglesiATI(JNIEnv * env,
|
|||
CHECK_GL_ERROR
|
||||
}
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glStencilOpSeparateATI
|
||||
* Signature: (IIII)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glStencilOpSeparateATI
|
||||
(JNIEnv *env, jclass clazz, jint p0, jint p1, jint p2, jint p3)
|
||||
{
|
||||
CHECK_EXISTS(glStencilOpSeparateATI)
|
||||
glStencilOpSeparateATI(p0, p1, p2, p3);
|
||||
CHECK_GL_ERROR
|
||||
}
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glStencilFuncSeparateATI
|
||||
* Signature: (IIII)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glStencilFuncSeparateATI
|
||||
(JNIEnv *env, jclass clazz, jint p0, jint p1, jint p2, jint p3)
|
||||
{
|
||||
CHECK_EXISTS(glStencilFuncSeparateATI)
|
||||
glStencilFuncSeparateATI(p0, p1, p2, p3);
|
||||
CHECK_GL_ERROR
|
||||
}
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glPointParameterfARB
|
||||
|
|
|
@ -1279,6 +1279,22 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glPNTrianglesfATI
|
|||
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glPNTrianglesiATI
|
||||
(JNIEnv *, jclass, jint, jint);
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glStencilOpSeparateATI
|
||||
* Signature: (IIII)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glStencilOpSeparateATI
|
||||
(JNIEnv *, jclass, jint, jint, jint, jint);
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glStencilFuncSeparateATI
|
||||
* Signature: (IIII)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL_glStencilFuncSeparateATI
|
||||
(JNIEnv *, jclass, jint, jint, jint, jint);
|
||||
|
||||
/*
|
||||
* Class: org_lwjgl_opengl_GL
|
||||
* Method: glPointParameterfARB
|
||||
|
|
Loading…
Reference in New Issue