vp: add test for pointsize output
authorKeith Whitwell <keithw@vmware.com>
Fri, 13 Mar 2009 11:37:17 +0000 (11:37 +0000)
committerKeith Whitwell <keithw@vmware.com>
Fri, 13 Mar 2009 11:57:15 +0000 (11:57 +0000)
progs/vp/psiz-mul.txt [new file with mode: 0644]
progs/vp/vp-tris.c

diff --git a/progs/vp/psiz-mul.txt b/progs/vp/psiz-mul.txt
new file mode 100644 (file)
index 0000000..a74df66
--- /dev/null
@@ -0,0 +1,6 @@
+!!ARBvp1.0
+MOV result.color, vertex.color; 
+MUL result.pointsize, vertex.color.x, {10.0}.x; 
+MOV  result.position, vertex.position;
+END
+
index e9b2479c63628eeefa9c6183a1f8637670284bd5..97995accdd180012563df4919c34e9361c38d16a 100644 (file)
@@ -18,6 +18,8 @@ static const char *filename = NULL;
 static GLuint nr_steps = 4;
 static GLuint prim = GL_TRIANGLES;
 static GLfloat psz = 1.0;
+static GLboolean pointsmooth = 0;
+static GLboolean program_point_size = 0;
 
 static void usage( char *name )
 {
@@ -188,6 +190,14 @@ static void subdiv( union vert *v0,
    }
 }
 
+static void enable( GLenum value, GLboolean flag )
+{
+   if (flag)
+      glEnable(value);
+   else
+      glDisable(value);
+}
+
 /** Assignment */
 #define ASSIGN_3V( V, V0, V1, V2 )  \
 do {                                \
@@ -202,6 +212,9 @@ static void Display( void )
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
    glPointSize(psz);
 
+   enable( GL_POINT_SMOOTH, pointsmooth );
+   enable( GL_VERTEX_PROGRAM_POINT_SIZE_ARB, program_point_size );
+
    glBegin(prim);
 
 
@@ -259,6 +272,12 @@ static void Key( unsigned char key, int x, int y )
       if (psz > .5)
          psz -= .5;
       break;
+   case 'm':
+      pointsmooth = !pointsmooth;
+      break;
+   case 'z':
+      program_point_size = !program_point_size;
+      break;
    case '+':
       nr_steps++;
       break;