Exemple #1
0
static void Display( void )
{
   glClearColor(0.3, 0.3, 0.3, 1);
   glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

   glEnable(GL_VERTEX_PROGRAM_ARB);

   glLoadIdentity();
   glRotatef(Zrot, 0, 0, 1);

   glPushMatrix();

   glVertexAttrib3fARB(3, 1, 0.5, 0.25);
   glBegin(GL_TRIANGLES);
#if 1
   glVertexAttrib3fARB(3, 1.0, 0.0, 0.0);
   glVertexAttrib2fARB(0, -0.5, -0.5);
   glVertexAttrib3fARB(3, 0.0, 1.0, 0.0);
   glVertexAttrib2fARB(0, 0.5, -0.5);
   glVertexAttrib3fARB(3, 0.0, 0.0, 1.0);
   glVertexAttrib2fARB(0, 0,  0.5);
#else
   glVertex2f( -1, -1);
   glVertex2f( 1, -1);
   glVertex2f( 0,  1);
#endif
   glEnd();

   glPopMatrix();

   glutSwapBuffers();
}
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttrib3fARB(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jlong function_pointer) {
	glVertexAttrib3fARBPROC glVertexAttrib3fARB = (glVertexAttrib3fARBPROC)((intptr_t)function_pointer);
	glVertexAttrib3fARB(index, x, y, z);
}
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglVertexAttrib3fARB(JNIEnv *env, jclass clazz, jint index, jfloat v0, jfloat v1, jfloat v2, jlong function_pointer) {
	glVertexAttrib3fARBPROC glVertexAttrib3fARB = (glVertexAttrib3fARBPROC)((intptr_t)function_pointer);
	glVertexAttrib3fARB(index, v0, v1, v2);
}
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3fARB(JNIEnv *__env, jclass clazz, jint index, jfloat v0, jfloat v1, jfloat v2) {
    glVertexAttrib3fARBPROC glVertexAttrib3fARB = (glVertexAttrib3fARBPROC)tlsGetFunction(1401);
    UNUSED_PARAM(clazz)
    glVertexAttrib3fARB(index, v0, v1, v2);
}