progs/tests: added Z invert option
authorBrian Paul <brianp@vmware.com>
Tue, 8 Sep 2009 22:47:30 +0000 (16:47 -0600)
committerBrian Paul <brianp@vmware.com>
Tue, 8 Sep 2009 22:47:30 +0000 (16:47 -0600)
progs/tests/zreaddraw.c

index 8839e108360dc280c0579a63347e566d916949f0..0821d5fb357e3d96adcca5b0c6a5b478f6904bb2 100644 (file)
@@ -12,6 +12,7 @@
 #include <GL/glut.h>
 
 static GLint WinWidth = 500, WinHeight = 500;
+static GLboolean Invert = GL_FALSE;
 
 
 static void Display(void)
@@ -50,7 +51,15 @@ static void Display(void)
    glPixelZoom(4.0, 4.0);
    glColor4f(1, 0, 0, 0);
    glWindowPos2i(100, 0);
+   if (Invert) {
+      glPixelTransferf(GL_DEPTH_SCALE, -1.0);
+      glPixelTransferf(GL_DEPTH_BIAS, 1.0);
+   }
    glDrawPixels(100, 100, GL_DEPTH_COMPONENT, GL_FLOAT, depth);
+   if (Invert) {
+      glPixelTransferf(GL_DEPTH_SCALE, 1.0);
+      glPixelTransferf(GL_DEPTH_BIAS, 0.0);
+   }
 
    glDisable(GL_DEPTH_TEST);
 
@@ -77,6 +86,9 @@ static void Key(unsigned char key, int x, int y)
    (void) x;
    (void) y;
    switch (key) {
+      case 'i':
+         Invert = !Invert;
+         break;
       case 27:
          exit(0);
          break;