added display list option (l key)

This commit is contained in:
Brian Paul 2004-01-31 19:57:25 +00:00
parent 1e71d2af5e
commit c9e1c8098b

View file

@ -23,6 +23,7 @@ static GLfloat xrot;
static GLfloat yrot;
static GLboolean useArrays = GL_TRUE;
static GLboolean useProgram = GL_TRUE;
static GLboolean useList = GL_FALSE;
static void read_surface( char *filename )
@ -79,7 +80,16 @@ static void Display(void)
glEnableClientState( GL_NORMAL_ARRAY );
}
glDrawArrays(GL_TRIANGLE_STRIP, 0, numverts);
if (useList) {
/* dumb, but a good test */
glNewList(1,GL_COMPILE);
glDrawArrays(GL_TRIANGLE_STRIP, 0, numverts);
glEndList();
glCallList(1);
}
else {
glDrawArrays(GL_TRIANGLE_STRIP, 0, numverts);
}
glDisableClientState( GL_VERTEX_ATTRIB_ARRAY0_NV );
glDisableClientState( GL_VERTEX_ATTRIB_ARRAY2_NV);
@ -225,6 +235,10 @@ static void Key( unsigned char key, int x, int y )
useArrays = !useArrays;
printf("use arrays: %s\n", useArrays ? "yes" : "no");
break;
case 'l':
useList = !useList;
printf("use list: %s\n", useList ? "yes" : "no");
break;
case 'p':
useProgram = !useProgram;
printf("use program: %s\n", useProgram ? "yes" : "no");