progs/tests: compile with SCons and glew
[mesa.git] / progs / tests / projtex.c
index 424f3dae1d25a1a7331ddcdaaefc56a362427bc2..800d81ecd67d180499b508f35031881e256b215e 100644 (file)
@@ -18,6 +18,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <math.h>
+#include <GL/glew.h>
 #include <GL/glut.h>
 #if 0
 #include "texture.h"
@@ -31,7 +32,7 @@
 #define M_PI 3.14159265358979323846
 #endif
 
-#define MAX_TEX 2
+#define MAX_TEX 4
 int NumTextures = 1;
 
 int winWidth, winHeight;
@@ -55,7 +56,9 @@ GLboolean linearFilter = GL_TRUE;
 
 char *texFilename[MAX_TEX] = {
    "../images/girl.rgb",
-   "../images/tile.rgb"
+   "../images/tile.rgb",
+   "../images/bw.rgb",
+   "../images/reflect.rgb"
 };
 
 
@@ -649,9 +652,9 @@ initialize(void)
   for (i = 0; i < NumTextures; i++) {
      ActiveTexture(GL_TEXTURE0_ARB + i);
 
-  glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
-  glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
-  glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
+     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
+     glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
+     glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
 
      glTexGeni(GL_S, GL_TEXTURE_GEN_MODE, GL_EYE_LINEAR);
      glTexGenfv(GL_S, GL_EYE_PLANE, eyePlaneS);
@@ -680,10 +683,12 @@ display(void)
       for (i = 0; i < NumTextures; i++) {
         glPushMatrix();
         glLoadIdentity();
+#if 0
         if (i & 1)
            glRotatef(angle, axis[0], axis[1], axis[2]);
         else
-           glRotatef(angle*2, axis[0], axis[1], axis[2]);
+#endif
+           glRotatef(angle*(i+1), axis[0], axis[1], axis[2]);
 
         glMultMatrixf((GLfloat *) textureXform[i]);
         glGetFloatv(GL_MODELVIEW_MATRIX, (GLfloat *) textureXform[i]);
@@ -997,9 +1002,11 @@ main(int argc, char **argv)
   if (argc > 1) {
      NumTextures = atoi(argv[1]);
   }
+  assert(NumTextures <= MAX_TEX);
 
   glutInitDisplayMode(GLUT_RGBA | GLUT_DEPTH | GLUT_DOUBLE);
   (void) glutCreateWindow("projtex");
+  glewInit();
 
   loadTexture = loadImageTextures;
   drawObject = drawCube;