summaryrefslogtreecommitdiffstats
path: root/progs/vpglsl
diff options
context:
space:
mode:
Diffstat (limited to 'progs/vpglsl')
-rw-r--r--progs/vpglsl/.gitignore1
-rw-r--r--progs/vpglsl/Makefile52
-rw-r--r--progs/vpglsl/SConscript6
-rw-r--r--progs/vpglsl/for.glsl7
-rw-r--r--progs/vpglsl/func.glsl33
-rw-r--r--progs/vpglsl/func2.glsl54
-rw-r--r--progs/vpglsl/if.glsl7
-rw-r--r--progs/vpglsl/ifelse.glsl8
-rw-r--r--progs/vpglsl/mov.glsl5
-rw-r--r--progs/vpglsl/nestedifs.glsl13
-rw-r--r--progs/vpglsl/nestedswizzle.glsl9
-rw-r--r--progs/vpglsl/off2f.glsl18
-rw-r--r--progs/vpglsl/psiz-imm.glsl6
-rw-r--r--progs/vpglsl/psiz-mul.glsl6
-rw-r--r--progs/vpglsl/varfor1f.glsl22
-rw-r--r--progs/vpglsl/varfor2f.glsl24
-rw-r--r--progs/vpglsl/varfor4f.glsl19
-rw-r--r--progs/vpglsl/vp-tris.c363
18 files changed, 0 insertions, 653 deletions
diff --git a/progs/vpglsl/.gitignore b/progs/vpglsl/.gitignore
deleted file mode 100644
index a5ff9935254..00000000000
--- a/progs/vpglsl/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-vp-tris
diff --git a/progs/vpglsl/Makefile b/progs/vpglsl/Makefile
deleted file mode 100644
index 3982aca5650..00000000000
--- a/progs/vpglsl/Makefile
+++ /dev/null
@@ -1,52 +0,0 @@
-# progs/tests/Makefile
-
-
-# These programs aren't intended to be included with the normal distro.
-# They're not too interesting but they're good for testing.
-
-TOP = ../..
-include $(TOP)/configs/current
-
-LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
-
-SOURCES = \
- vp-tris.c
-
-
-
-PROGS = $(SOURCES:%.c=%)
-
-INCLUDES = -I. -I$(TOP)/include -I../samples
-
-
-##### RULES #####
-
-.SUFFIXES:
-.SUFFIXES: .c
-
-.c:
- $(CC) $(INCLUDES) $(CFLAGS) $< $(LIBS) -o $@
-
-.c.o:
- $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
-
-.S.o:
- $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
-
-
-##### TARGETS #####
-
-default: $(PROGS)
-
-clean:
- rm -f $(PROGS)
- rm -f *.o
- rm -f getproclist.h
-
-
-
-
-
-# Emacs tags
-tags:
- etags `find . -name \*.[ch]` `find ../include`
diff --git a/progs/vpglsl/SConscript b/progs/vpglsl/SConscript
deleted file mode 100644
index 787cb793af2..00000000000
--- a/progs/vpglsl/SConscript
+++ /dev/null
@@ -1,6 +0,0 @@
-Import('*')
-
-progs_env.Program(
- target = 'vp-tris',
- source = ['vp-tris.c'],
- )
diff --git a/progs/vpglsl/for.glsl b/progs/vpglsl/for.glsl
deleted file mode 100644
index 45d6845dacc..00000000000
--- a/progs/vpglsl/for.glsl
+++ /dev/null
@@ -1,7 +0,0 @@
-
-void main() {
- gl_Position = gl_Vertex;
- gl_FrontColor = vec4(0);
- for (int i = 0; i < 4; ++i)
- gl_FrontColor += gl_Color;
-}
diff --git a/progs/vpglsl/func.glsl b/progs/vpglsl/func.glsl
deleted file mode 100644
index 05539880fd8..00000000000
--- a/progs/vpglsl/func.glsl
+++ /dev/null
@@ -1,33 +0,0 @@
-#version 120
-const int KernelSize = 16;
-uniform float KernelValue1f[KernelSize];
-
-
-float add_two(float a, float b)
-{
- if (a > b)
- return a - b;
- else
- return a + b;
-}
-
-vec4 func(vec4 x)
-{
- int i;
- vec4 tmp = gl_Color;
- vec4 sum = x;
-
- for (i = 0; i < KernelSize; ++i) {
- sum = vec4( add_two(sum.x, KernelValue1f[i]) );
- }
- return sum;
-}
-
-void main(void)
-{
- vec4 sum = vec4(0.0);
-
- sum = func(sum);
- gl_Position = gl_Vertex;
- gl_FrontColor = sum;
-}
diff --git a/progs/vpglsl/func2.glsl b/progs/vpglsl/func2.glsl
deleted file mode 100644
index df964ed6f02..00000000000
--- a/progs/vpglsl/func2.glsl
+++ /dev/null
@@ -1,54 +0,0 @@
-#version 120
-const int KernelSize = 16;
-uniform float KernelValue1f[KernelSize];
-
-
-float add_two(float a, float b)
-{
- if (a > b)
- return a - b;
- else
- return a + b;
-}
-
-vec4 myfunc(vec4 x, vec4 mult, vec4 c)
-{
- if (x.x >= 0.5) {
- return mult * c;
- } else {
- return mult + c;
- }
-}
-
-vec4 func2(vec4 x)
-{
- int i;
- vec4 color = vec4(0);
- for (i = 0; i < KernelSize; ++i) {
- vec4 tmp = vec4(1./KernelSize);
- color += myfunc(x, tmp, gl_Color);
- }
- return x * color;
-}
-
-vec4 func(vec4 x)
-{
- int i;
- vec4 tmp = gl_Color;
- vec4 sum = x;
-
- for (i = 0; i < KernelSize; ++i) {
- sum = vec4( add_two(sum.x, KernelValue1f[i]) );
- }
- sum = func2(sum);
- return sum;
-}
-
-void main(void)
-{
- vec4 sum = vec4(0.0);
-
- sum = func(sum);
- gl_Position = gl_Vertex;
- gl_FrontColor = sum;
-}
diff --git a/progs/vpglsl/if.glsl b/progs/vpglsl/if.glsl
deleted file mode 100644
index 174f69c19c9..00000000000
--- a/progs/vpglsl/if.glsl
+++ /dev/null
@@ -1,7 +0,0 @@
-
-void main() {
- gl_FrontColor = gl_Color;
- gl_Position = gl_Vertex;
- if (gl_Position.x < 0.5)
- gl_FrontColor = vec4(1.0, 0.0, 0.0, 1.0);
-}
diff --git a/progs/vpglsl/ifelse.glsl b/progs/vpglsl/ifelse.glsl
deleted file mode 100644
index 645b2117a17..00000000000
--- a/progs/vpglsl/ifelse.glsl
+++ /dev/null
@@ -1,8 +0,0 @@
-
-void main() {
- gl_Position = gl_Vertex;
- if (gl_Position.x < 0.5)
- gl_FrontColor = vec4(1.0, 0.0, 0.0, 1.0);
- else
- gl_FrontColor = gl_Color;
-}
diff --git a/progs/vpglsl/mov.glsl b/progs/vpglsl/mov.glsl
deleted file mode 100644
index 63b16f4754b..00000000000
--- a/progs/vpglsl/mov.glsl
+++ /dev/null
@@ -1,5 +0,0 @@
-
-void main() {
- gl_FrontColor = gl_Color;
- gl_Position = gl_Vertex;
-}
diff --git a/progs/vpglsl/nestedifs.glsl b/progs/vpglsl/nestedifs.glsl
deleted file mode 100644
index abb235cd65b..00000000000
--- a/progs/vpglsl/nestedifs.glsl
+++ /dev/null
@@ -1,13 +0,0 @@
-
-void main() {
- gl_Position = gl_Vertex;
- if (gl_Position.x < 0.5) {
- if (gl_Position.y < 0.20) {
- gl_FrontColor = vec4(1.0, 0.0, 0.0, 1.0);
- } else {
- gl_FrontColor = vec4(0.0, 1.0, 0.0, 1.0);
- }
- gl_FrontColor.y = 1.0;
- } else
- gl_FrontColor = gl_Color;
-}
diff --git a/progs/vpglsl/nestedswizzle.glsl b/progs/vpglsl/nestedswizzle.glsl
deleted file mode 100644
index a3adb3dfeb2..00000000000
--- a/progs/vpglsl/nestedswizzle.glsl
+++ /dev/null
@@ -1,9 +0,0 @@
-
-void main() {
- gl_Position = gl_Vertex;
- gl_FrontColor = gl_Color;
- if (gl_Position.x < 0.5) {
- gl_FrontColor.y = 1.0;
- }
- gl_FrontColor.xzw = vec3(0, 0, 1);
-}
diff --git a/progs/vpglsl/off2f.glsl b/progs/vpglsl/off2f.glsl
deleted file mode 100644
index e06cb42a0ed..00000000000
--- a/progs/vpglsl/off2f.glsl
+++ /dev/null
@@ -1,18 +0,0 @@
-const int KernelSize = 8;
-uniform vec2 Offset2f[KernelSize];
-uniform vec4 KernelValue4f[KernelSize];
-
-void main(void)
-{
- int i;
- vec4 sum = vec4(0.0);
- vec4 tmp = gl_Color;
- vec2 rg, ba;
- gl_Position = gl_Vertex;
-
- rg = Offset2f[4];
- ba = Offset2f[5];
-
-
- gl_FrontColor = KernelValue4f[0] * vec4(rg, ba);
-}
diff --git a/progs/vpglsl/psiz-imm.glsl b/progs/vpglsl/psiz-imm.glsl
deleted file mode 100644
index 101d314d584..00000000000
--- a/progs/vpglsl/psiz-imm.glsl
+++ /dev/null
@@ -1,6 +0,0 @@
-
-void main() {
- gl_FrontColor = gl_Color;
- gl_PointSize = 2.0;
- gl_Position = gl_Vertex;
-}
diff --git a/progs/vpglsl/psiz-mul.glsl b/progs/vpglsl/psiz-mul.glsl
deleted file mode 100644
index d2a90d8578e..00000000000
--- a/progs/vpglsl/psiz-mul.glsl
+++ /dev/null
@@ -1,6 +0,0 @@
-
-void main() {
- gl_FrontColor = gl_Color;
- gl_PointSize = 10.0 * gl_Color.x;
- gl_Position = gl_Vertex;
-}
diff --git a/progs/vpglsl/varfor1f.glsl b/progs/vpglsl/varfor1f.glsl
deleted file mode 100644
index 9c3e8f2a238..00000000000
--- a/progs/vpglsl/varfor1f.glsl
+++ /dev/null
@@ -1,22 +0,0 @@
-const int KernelSize = 16;
-uniform float KernelValue1f[KernelSize];
-
-void main(void)
-{
- int i;
- vec4 sum = vec4(0.0);
- vec4 tmp = gl_Color;
- gl_Position = gl_Vertex;
-
- for (i = 0; i < KernelSize; ++i) {
- float x, y, z, w;
-
- x = KernelValue1f[i]; ++i;
- y = KernelValue1f[i]; ++i;
- z = KernelValue1f[i]; ++i;
- w = KernelValue1f[i];
-
- sum += tmp * vec4(x, y, z, w);
- }
- gl_FrontColor = sum;
-}
diff --git a/progs/vpglsl/varfor2f.glsl b/progs/vpglsl/varfor2f.glsl
deleted file mode 100644
index d98a1100458..00000000000
--- a/progs/vpglsl/varfor2f.glsl
+++ /dev/null
@@ -1,24 +0,0 @@
-const int KernelSize = 9;
-uniform vec2 KernelValue2f[KernelSize];
-
-void main(void)
-{
- int i;
- vec4 sum = vec4(0.0);
- vec4 tmp = gl_Color;
- gl_Position = gl_Vertex;
-
- for (i = 0; i < KernelSize; ++i) {
- vec2 rg, ba;
-
- rg = KernelValue2f[i];
- ++i;
- if (i < KernelSize)
- ba = KernelValue2f[i];
- else
- ba = vec2(0, 0);
-
- sum += tmp * vec4(rg, ba);
- }
- gl_FrontColor = sum;
-}
diff --git a/progs/vpglsl/varfor4f.glsl b/progs/vpglsl/varfor4f.glsl
deleted file mode 100644
index c70ba0356fd..00000000000
--- a/progs/vpglsl/varfor4f.glsl
+++ /dev/null
@@ -1,19 +0,0 @@
-const int KernelSize = 4;
-uniform vec4 KernelValue4f[KernelSize];
-
-void main(void)
-{
- int i;
- vec4 sum = vec4(0.0);
- vec4 tmp = gl_Color;
- gl_Position = gl_Vertex;
-
- for (i = 0; i < KernelSize; ++i) {
- vec4 rgba;
-
- rgba = KernelValue4f[i];
-
- sum += tmp * rgba;
- }
- gl_FrontColor = sum;
-}
diff --git a/progs/vpglsl/vp-tris.c b/progs/vpglsl/vp-tris.c
deleted file mode 100644
index 6a1fa3d3bf0..00000000000
--- a/progs/vpglsl/vp-tris.c
+++ /dev/null
@@ -1,363 +0,0 @@
-
-#include <assert.h>
-#include <string.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-
-#include <GL/glew.h>
-#include <GL/glut.h>
-
-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 GLuint fragShader;
-static GLuint vertShader;
-static GLuint program;
-
-static void usage( char *name )
-{
- fprintf( stderr, "usage: %s [ options ] shader_filename\n", name );
- fprintf( stderr, "\n" );
- fprintf( stderr, "options:\n" );
- fprintf( stderr, " -f flat shaded\n" );
- fprintf( stderr, " -nNr subdivision steps\n" );
-}
-
-
-static void load_and_compile_shader(GLuint shader, const char *text)
-{
- GLint stat;
-
- glShaderSource(shader, 1, (const GLchar **) &text, NULL);
-
- glCompileShader(shader);
-
- glGetShaderiv(shader, GL_COMPILE_STATUS, &stat);
- if (!stat) {
- GLchar log[1000];
- GLsizei len;
- glGetShaderInfoLog(shader, 1000, &len, log);
- fprintf(stderr, "vp-tris: problem compiling shader:\n%s\n", log);
- exit(1);
- }
-}
-
-static void read_shader(GLuint shader, const char *filename)
-{
- const int max = 100*1000;
- int n;
- char *buffer = (char*) malloc(max);
- FILE *f = fopen(filename, "r");
- if (!f) {
- fprintf(stderr, "vp-tris: Unable to open shader file %s\n", filename);
- exit(1);
- }
-
- n = fread(buffer, 1, max, f);
- printf("vp-tris: read %d bytes from shader file %s\n", n, filename);
- if (n > 0) {
- buffer[n] = 0;
- load_and_compile_shader(shader, buffer);
- }
-
- fclose(f);
- free(buffer);
-}
-
-static void check_link(GLuint prog)
-{
- GLint stat;
- glGetProgramiv(prog, GL_LINK_STATUS, &stat);
- if (!stat) {
- GLchar log[1000];
- GLsizei len;
- glGetProgramInfoLog(prog, 1000, &len, log);
- fprintf(stderr, "Linker error:\n%s\n", log);
- }
-}
-
-static void setup_uniforms()
-{
- {
- GLint loc1f = glGetUniformLocationARB(program, "Offset1f");
- GLint loc2f = glGetUniformLocationARB(program, "Offset2f");
- GLint loc4f = glGetUniformLocationARB(program, "Offset4f");
- GLfloat vecKer[] =
- { 1.0, 0.0, 0.0, 1.0,
- 0.0, 1.0, 0.0, 1.0,
- 1.0, 0.0, 0.0, 1.0,
- 0.0, 0.0, 0.0, 1.0
- };
- if (loc1f >= 0)
- glUniform1fv(loc1f, 16, vecKer);
-
- if (loc2f >= 0)
- glUniform2fv(loc2f, 8, vecKer);
-
- if (loc4f >= 0)
- glUniform4fv(loc4f, 4, vecKer);
-
- }
-
- {
- GLint loc1f = glGetUniformLocationARB(program, "KernelValue1f");
- GLint loc2f = glGetUniformLocationARB(program, "KernelValue2f");
- GLint loc4f = glGetUniformLocationARB(program, "KernelValue4f");
- GLfloat vecKer[] =
- { 1.0, 0.0, 0.0, 0.25,
- 0.0, 1.0, 0.0, 0.25,
- 0.0, 0.0, 1.0, 0.25,
- 0.0, 0.0, 0.0, 0.25,
- 0.5, 0.0, 0.0, 0.35,
- 0.0, 0.5, 0.0, 0.35,
- 0.0, 0.0, 0.5, 0.35,
- 0.0, 0.0, 0.0, 0.35
- };
- if (loc1f >= 0)
- glUniform1fv(loc1f, 16, vecKer);
-
- if (loc2f >= 0)
- glUniform2fv(loc2f, 8, vecKer);
-
- if (loc4f >= 0)
- glUniform4fv(loc4f, 4, vecKer);
- }
-}
-
-static void prepare_shaders()
-{
- static const char *fragShaderText =
- "void main() {\n"
- " gl_FragColor = gl_Color;\n"
- "}\n";
- static const char *vertShaderText =
- "void main() {\n"
- " gl_FrontColor = gl_Color;\n"
- " gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;\n"
- "}\n";
- fragShader = glCreateShader(GL_FRAGMENT_SHADER);
- load_and_compile_shader(fragShader, fragShaderText);
-
-
- vertShader = glCreateShader(GL_VERTEX_SHADER);
- if (filename)
- read_shader(vertShader, filename);
- else
- load_and_compile_shader(vertShader, vertShaderText);
-
- program = glCreateProgram();
- glAttachShader(program, fragShader);
- glAttachShader(program, vertShader);
- glLinkProgram(program);
- check_link(program);
- glUseProgram(program);
-
- setup_uniforms();
-}
-
-static void args(int argc, char *argv[])
-{
- GLint i;
-
- for (i = 1; i < argc; i++) {
- if (strncmp(argv[i], "-n", 2) == 0) {
- nr_steps = atoi((argv[i]) + 2);
- }
- else if (strcmp(argv[i], "-f") == 0) {
- glShadeModel(GL_FLAT);
- }
- else if (i == argc - 1) {
- filename = argv[i];
- }
- else {
- usage(argv[0]);
- exit(1);
- }
- }
-
- if (!filename) {
- usage(argv[0]);
- exit(1);
- }
-}
-
-
-
-
-union vert {
- struct {
- GLfloat color[3];
- GLfloat pos[3];
- } v;
- GLfloat f[6];
-};
-
-static void make_midpoint( union vert *out,
- const union vert *v0,
- const union vert *v1)
-{
- int i;
- for (i = 0; i < 6; i++)
- out->f[i] = v0->f[i] + .5 * (v1->f[i] - v0->f[i]);
-}
-
-static void subdiv( union vert *v0,
- union vert *v1,
- union vert *v2,
- GLuint depth )
-{
- if (depth == 0) {
- glColor3fv(v0->v.color);
- glVertex3fv(v0->v.pos);
- glColor3fv(v1->v.color);
- glVertex3fv(v1->v.pos);
- glColor3fv(v2->v.color);
- glVertex3fv(v2->v.pos);
- }
- else {
- union vert m[3];
-
- make_midpoint(&m[0], v0, v1);
- make_midpoint(&m[1], v1, v2);
- make_midpoint(&m[2], v2, v0);
-
- subdiv(&m[0], &m[2], v0, depth-1);
- subdiv(&m[1], &m[0], v1, depth-1);
- subdiv(&m[2], &m[1], v2, depth-1);
- subdiv(&m[0], &m[1], &m[2], depth-1);
- }
-}
-
-static void enable( GLenum value, GLboolean flag )
-{
- if (flag)
- glEnable(value);
- else
- glDisable(value);
-}
-
-/** Assignment */
-#define ASSIGN_3V( V, V0, V1, V2 ) \
-do { \
- V[0] = V0; \
- V[1] = V1; \
- V[2] = V2; \
-} while(0)
-
-static void Display( void )
-{
- glClearColor(0.3, 0.3, 0.3, 1);
- glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
- glPointSize(psz);
-
- glUseProgram(program);
- enable( GL_POINT_SMOOTH, pointsmooth );
- enable( GL_VERTEX_PROGRAM_POINT_SIZE_ARB, program_point_size );
-
- glBegin(prim);
-
-
- {
- union vert v[3];
-
- ASSIGN_3V(v[0].v.color, 0,0,1);
- ASSIGN_3V(v[0].v.pos, 0.9, -0.9, 0.0);
- ASSIGN_3V(v[1].v.color, 1,0,0);
- ASSIGN_3V(v[1].v.pos, 0.9, 0.9, 0.0);
- ASSIGN_3V(v[2].v.color, 0,1,0);
- ASSIGN_3V(v[2].v.pos, -0.9, 0, 0.0);
-
- subdiv(&v[0], &v[1], &v[2], nr_steps);
- }
-
- glEnd();
-
-
- glFlush();
-}
-
-
-static void Reshape( int width, int height )
-{
- glViewport( 0, 0, width, height );
- glMatrixMode( GL_PROJECTION );
- glLoadIdentity();
- glOrtho(-1.0, 1.0, -1.0, 1.0, -0.5, 1000.0);
- glMatrixMode( GL_MODELVIEW );
- glLoadIdentity();
- /*glTranslatef( 0.0, 0.0, -15.0 );*/
-}
-
-
-static void CleanUp(void)
-{
- glDeleteShader(fragShader);
- glDeleteShader(vertShader);
- glDeleteProgram(program);
-}
-
-static void Key( unsigned char key, int x, int y )
-{
- (void) x;
- (void) y;
- switch (key) {
- case 'p':
- prim = GL_POINTS;
- break;
- case 't':
- prim = GL_TRIANGLES;
- break;
- case 's':
- psz += .5;
- break;
- case 'S':
- if (psz > .5)
- psz -= .5;
- break;
- case 'm':
- pointsmooth = !pointsmooth;
- break;
- case 'z':
- program_point_size = !program_point_size;
- break;
- case '+':
- nr_steps++;
- break;
- case '-':
- if (nr_steps)
- nr_steps--;
- break;
- case ' ':
- psz = 1.0;
- prim = GL_TRIANGLES;
- nr_steps = 4;
- break;
- case 27:
- CleanUp();
- exit(0);
- break;
- }
- glutPostRedisplay();
-}
-
-int main( int argc, char *argv[] )
-{
- glutInit( &argc, argv );
- glutInitWindowPosition( 0, 0 );
- glutInitWindowSize( 250, 250 );
- glutInitDisplayMode( GLUT_RGB | GLUT_SINGLE | GLUT_DEPTH );
- glutCreateWindow(argv[argc-1]);
- glewInit();
- glutReshapeFunc( Reshape );
- glutKeyboardFunc( Key );
- glutDisplayFunc( Display );
- args( argc, argv );
- prepare_shaders();
- glutMainLoop();
- return 0;
-}