Compare commits
	
		
			166 Commits
		
	
	
		
			mesa_7_7_r
			...
			mesa_7_6_1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 42d9409873 | ||
|  | 35ff190a9c | ||
|  | 138d639ec9 | ||
|  | a43fc39585 | ||
|  | 6f202b53b0 | ||
|  | ddfc2e7439 | ||
|  | dc0a1ebc73 | ||
|  | a60457b03b | ||
|  | 7e3825abdb | ||
|  | ca02109e91 | ||
|  | 7430c3ac35 | ||
|  | f23d01e726 | ||
|  | 987e9188d2 | ||
|  | 22d2547ad1 | ||
|  | 0a8d508854 | ||
|  | 6e5fe39f50 | ||
|  | b18fa9f448 | ||
|  | 6c9870b54c | ||
|  | 555dc25c4c | ||
|  | aa44efb045 | ||
|  | 0aef54ba62 | ||
|  | 89d85e8170 | ||
|  | 20590b9733 | ||
|  | cd1a09e3bb | ||
|  | f8d4ac56f7 | ||
|  | 7ea452dd35 | ||
|  | 75e8dbb235 | ||
|  | 9dc018618d | ||
|  | af4e4a73f7 | ||
|  | 588e9f69c4 | ||
|  | de9132f274 | ||
|  | 1e444c9960 | ||
|  | c1d361bd0b | ||
|  | 786899f153 | ||
|  | 7d529736b9 | ||
|  | c2cee7741e | ||
|  | 15c6558a2e | ||
|  | d5be33477e | ||
|  | 44d6ab6de5 | ||
|  | 9e2eee4ab2 | ||
|  | 81dcf8bdf2 | ||
|  | 7d41b4248b | ||
|  | d8f8eca9ef | ||
|  | 5076a4f53a | ||
|  | f7f1211b9b | ||
|  | 94fba49be9 | ||
|  | e31df54754 | ||
|  | cb1dcb55f9 | ||
|  | d38ffed523 | ||
|  | 1cf60c9810 | ||
|  | bc0509bba8 | ||
|  | 51f52edaf1 | ||
|  | dcb4a37fc8 | ||
|  | b827578805 | ||
|  | 444d1f3910 | ||
|  | 34528a34c4 | ||
|  | 348883076b | ||
|  | 6f2d51b81f | ||
|  | 637970aefd | ||
|  | a082d965de | ||
|  | 3de8fff45d | ||
|  | 33a120e476 | ||
|  | af16c822a5 | ||
|  | d33bf38d63 | ||
|  | 3f7c2ac279 | ||
|  | 7f146b3824 | ||
|  | a1d46fbea0 | ||
|  | d88f3b9468 | ||
|  | 54b0ed8360 | ||
|  | 1de1deffce | ||
|  | 7e93e06781 | ||
|  | 7f8e22aa29 | ||
|  | 369669ff9a | ||
|  | dc0777d3e3 | ||
|  | add6dfbba6 | ||
|  | 3e8b2fda21 | ||
|  | 9dbd47fc6b | ||
|  | 7d84169865 | ||
|  | 7005f7cd1a | ||
|  | c994f08eb1 | ||
|  | f622b649fb | ||
|  | 76b3523d75 | ||
|  | 978b80c8e3 | ||
|  | 3cd745515e | ||
|  | b2953ee1a6 | ||
|  | d74cd04e61 | ||
|  | ca8a2150c7 | ||
|  | 4071d065c2 | ||
|  | 1446f30875 | ||
|  | 412aeeed1c | ||
|  | 6212c8103a | ||
|  | 2cd2341ce8 | ||
|  | d642edd2d1 | ||
|  | 8d2f3434c5 | ||
|  | fe8e18bcd4 | ||
|  | 4fb5ae7233 | ||
|  | 5683d7d43f | ||
|  | e5bc2a19bd | ||
|  | 225bc70b77 | ||
|  | ca7cd3ade0 | ||
|  | fb83fa26c4 | ||
|  | 8d8fd9776e | ||
|  | c74afe0c46 | ||
|  | 8df551c46b | ||
|  | ea487c6d0b | ||
|  | 7b5eba453e | ||
|  | 7ed749c062 | ||
|  | 80a3944a4d | ||
|  | 6c1fc2b2a5 | ||
|  | fe38c16021 | ||
|  | d23bb22f62 | ||
|  | 12a440abfb | ||
|  | 4bf96ebdae | ||
|  | ba3fedf246 | ||
|  | 8350648401 | ||
|  | 7324c22024 | ||
|  | 68d206fafa | ||
|  | 69ed1147a8 | ||
|  | efb582fde7 | ||
|  | b210739aad | ||
|  | b1a87a3e0b | ||
|  | 25fd168f03 | ||
|  | b803abbaad | ||
|  | 5820dae4ec | ||
|  | fc5f07de1a | ||
|  | d245a951f3 | ||
|  | 905e12f3cc | ||
|  | 56de7e222e | ||
|  | 34a0b22a74 | ||
|  | 9e29242331 | ||
|  | a0ac8fc7d8 | ||
|  | 0a6acecb35 | ||
|  | 305d4f147e | ||
|  | 772e004781 | ||
|  | f1172c4030 | ||
|  | 84de1672d3 | ||
|  | 4ca8e1680e | ||
|  | d6a993135f | ||
|  | 005242f166 | ||
|  | d3208678c2 | ||
|  | 97cbf4943a | ||
|  | a99bf51bc8 | ||
|  | 28474e1225 | ||
|  | bb6e3af939 | ||
|  | a38776419b | ||
|  | 791b754687 | ||
|  | 89e747920f | ||
|  | 5a25adb646 | ||
|  | 3910e88ebf | ||
|  | 2b5618fc5b | ||
|  | c3b7f93e02 | ||
|  | 235c0c8134 | ||
|  | 0a107d36c2 | ||
|  | b094683e7c | ||
|  | 592c8522a2 | ||
|  | 8f4d3613da | ||
|  | 9ed77d12b1 | ||
|  | 832593772d | ||
|  | 2a5cd95e24 | ||
|  | ccea09cd3a | ||
|  | 67a0628ab2 | ||
|  | 908a3e56cc | ||
|  | ba97b98842 | ||
|  | b9f4a0bd2b | ||
|  | d8da270a2b | ||
|  | 910aaed4da | 
| @@ -59,7 +59,7 @@ def AddOptions(opts): | ||||
| 	opts.Add(EnumOption('machine', 'use machine-specific assembly code', default_machine, | ||||
| 											 allowed_values=('generic', 'ppc', 'x86', 'x86_64'))) | ||||
| 	opts.Add(EnumOption('platform', 'target platform', default_platform, | ||||
| 											 allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince'))) | ||||
| 											 allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin'))) | ||||
| 	opts.Add(EnumOption('toolchain', 'compiler toolchain', 'default', | ||||
| 											 allowed_values=('default', 'crossmingw', 'winsdk', 'winddk'))) | ||||
| 	opts.Add(BoolOption('llvm', 'use LLVM', 'no')) | ||||
|   | ||||
| @@ -56,6 +56,10 @@ tbd | ||||
| <li>Fixed clipping / provoking vertex bugs in i965 driver. | ||||
| <li>Assorted build fixes for AIX. | ||||
| <li>Endianness fixes for the DRI swrast driver (bug 22767).</li> | ||||
| <li>Point sprite fixes for i915/945 driver. | ||||
| <li>Fixed assorted memory leaks (usually on error paths) | ||||
| <li>Fixed some GLSL compiler bugs (ex: 25579) | ||||
| <li>Assorted build fixes for BlueGene | ||||
| </ul> | ||||
|  | ||||
| <h2>Changes</h2> | ||||
|   | ||||
							
								
								
									
										1
									
								
								progs/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								progs/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| *.dSYM | ||||
| @@ -4,7 +4,7 @@ TOP = .. | ||||
|  | ||||
| include $(TOP)/configs/current | ||||
|  | ||||
| SUBDIRS = "$(strip "$(PROGRAM_DIRS)")" | ||||
| SUBDIRS = $(PROGRAM_DIRS) | ||||
|  | ||||
|  | ||||
| default: message subdirs | ||||
| @@ -15,22 +15,18 @@ message: | ||||
|  | ||||
|  | ||||
| subdirs: | ||||
| 	@if test -n "$(SUBDIRS)" ; then \ | ||||
| 		for dir in $(SUBDIRS) ; do \ | ||||
| 			if [ -d $$dir ] ; then \ | ||||
| 				(cd $$dir && $(MAKE)) || exit 1 ; \ | ||||
| 			fi \ | ||||
| 		done \ | ||||
| 	fi | ||||
| 	@list='$(SUBDIRS)'; for dir in $$list ; do \ | ||||
| 		if [ -d $$dir ] ; then \ | ||||
| 			(cd $$dir && $(MAKE)) || exit 1 ; \ | ||||
| 		fi \ | ||||
| 	done | ||||
|  | ||||
| # Dummy install target | ||||
| install: | ||||
|  | ||||
| clean: | ||||
| 	-@if test -n "$(SUBDIRS)" ; then \ | ||||
| 		for dir in $(SUBDIRS) tests ; do \ | ||||
| 			if [ -d $$dir ] ; then \ | ||||
| 				(cd $$dir && $(MAKE) clean) ; \ | ||||
| 			fi \ | ||||
| 		done \ | ||||
| 	fi | ||||
| 	@list='$(SUBDIRS)'; for dir in $$list tests ; do \ | ||||
| 		if [ -d $$dir ] ; then \ | ||||
| 			(cd $$dir && $(MAKE) clean) ; \ | ||||
| 		fi \ | ||||
| 	done | ||||
|   | ||||
| @@ -15,8 +15,6 @@ | ||||
|  | ||||
| #define DEPTH 5.0f | ||||
|  | ||||
| static PFNGLFOGCOORDPOINTEREXTPROC glFogCoordPointer_ext; | ||||
|  | ||||
| static GLfloat camz; | ||||
|  | ||||
| static GLint fogMode; | ||||
|   | ||||
| @@ -353,6 +353,7 @@ MakeSphere(void) | ||||
|    glNewList(SphereList, GL_COMPILE); | ||||
|    gluSphere(obj, 2.0f, 10, 5); | ||||
|    glEndList(); | ||||
|    gluDeleteQuadric(obj); | ||||
| } | ||||
|  | ||||
| static void | ||||
|   | ||||
| @@ -133,6 +133,8 @@ initdlists(void) | ||||
|  | ||||
|       glEndList(); | ||||
|    } | ||||
|  | ||||
|    gluDeleteQuadric(obj); | ||||
| } | ||||
|  | ||||
| static void | ||||
|   | ||||
| @@ -245,6 +245,10 @@ loadImageTextures(void) | ||||
|        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||||
|      } | ||||
|      glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, borderColor); | ||||
|  | ||||
|      free(texData3); | ||||
|      free(texData4); | ||||
|      free(image); | ||||
|   } | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -834,6 +834,8 @@ initdlists(void) | ||||
|    gluQuadricTexture(obj, GL_TRUE); | ||||
|    gluSphere(obj, SPHERE_RADIUS, 16, 16); | ||||
|    glEndList(); | ||||
|  | ||||
|    gluDeleteQuadric(obj); | ||||
| } | ||||
|  | ||||
| int | ||||
|   | ||||
| @@ -17,6 +17,7 @@ SOURCES = \ | ||||
| 	tri-depth2.c \ | ||||
| 	tri-depthwrite.c \ | ||||
| 	tri-depthwrite2.c \ | ||||
| 	tri-inv.c \ | ||||
|         tri-param.c \ | ||||
|         fp-tri.c | ||||
|  | ||||
|   | ||||
| @@ -197,7 +197,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -57,7 +57,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -59,7 +59,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -56,7 +56,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -54,7 +54,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -76,7 +76,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -31,7 +31,7 @@ void main() | ||||
|     float iter; | ||||
|  | ||||
| //    for (iter = 0.0; iter < MaxIterations && r2 < 4.0; ++iter) | ||||
|     for (iter = 0.0; iter < 12 && r2 < 4.0; ++iter) | ||||
|     for (iter = 0.0; iter < 12.0 && r2 < 4.0; ++iter) | ||||
|     { | ||||
|         float tempreal = real; | ||||
|  | ||||
|   | ||||
| @@ -10,16 +10,15 @@ LIB_DEP = \ | ||||
| 	$(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) \ | ||||
| 	$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME) | ||||
|  | ||||
| LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS) | ||||
|  | ||||
| INCLUDE_DIRS = -I$(TOP)/progs/util | ||||
| LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) \ | ||||
| 	-l$(GL_LIB) $(APP_LIB_DEPS) | ||||
|  | ||||
| # using : to avoid APP_CC pointing to CC loop | ||||
| CC:=$(APP_CC) | ||||
| CFLAGS += -I$(INCDIR) | ||||
| LDLIBS=$(LIBS) | ||||
| CC := $(APP_CC) | ||||
| CFLAGS := -I$(INCDIR) $(CFLAGS) | ||||
| LDLIBS = $(LIBS) | ||||
|  | ||||
| DEMO_SOURCES = \ | ||||
| PROG_SOURCES = \ | ||||
| 	array.c \ | ||||
| 	bitmap.c \ | ||||
| 	brick.c \ | ||||
| @@ -59,8 +58,8 @@ UTIL_SOURCES = \ | ||||
| 	readtex.c | ||||
|  | ||||
| UTIL_OBJS = $(UTIL_SOURCES:.c=.o) | ||||
| PROG_OBJS = $(DEMO_SOURCES:.c=.o) | ||||
| PROGS = $(DEMO_SOURCES:%.c=%) | ||||
| PROG_OBJS = $(PROG_SOURCES:.c=.o) | ||||
| PROGS = $(PROG_SOURCES:%.c=%) | ||||
|  | ||||
| ##### TARGETS ##### | ||||
|  | ||||
|   | ||||
| @@ -36,7 +36,7 @@ static GLint win = 0; | ||||
|  | ||||
| static GLfloat xRot = 20.0f, yRot = 0.0f, zRot = 0.0f; | ||||
|  | ||||
| static GLuint tangentAttrib; | ||||
| static GLint tangentAttrib; | ||||
|  | ||||
| static GLboolean Anim = GL_FALSE; | ||||
|  | ||||
|   | ||||
| @@ -369,7 +369,7 @@ static void keyPress(unsigned char key, int x, int y) | ||||
|    case 27: | ||||
|       exit(0); | ||||
|    default: | ||||
|       return; | ||||
|       break; | ||||
|    } | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|   | ||||
| @@ -140,6 +140,7 @@ MakeSphere(void) | ||||
|    glNewList(SphereList, GL_COMPILE); | ||||
|    gluSphere(obj, 2.0f, 30, 15); | ||||
|    glEndList(); | ||||
|    gluDeleteQuadric(obj); | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -22,22 +22,22 @@ static const char *FragShaderText[ 4 ] = { | ||||
|    "void main()\n" | ||||
|    "{\n" | ||||
|    "   gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].w ) * 0.5 + 0.5;\n" | ||||
|    "   gl_FragColor.a = 1;\n" | ||||
|    "   gl_FragColor.a = 1.0;\n" | ||||
|    "}\n", | ||||
|    "void main()\n" | ||||
|    "{\n" | ||||
|    "   gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xw ) * 0.5 + 0.5;\n" | ||||
|    "   gl_FragColor.a = 1;\n" | ||||
|    "   gl_FragColor.a = 1.0;\n" | ||||
|    "}\n", | ||||
|    "void main()\n" | ||||
|    "{\n" | ||||
|    "   gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyw ) * 0.5 + 0.5;\n" | ||||
|    "   gl_FragColor.a = 1;\n" | ||||
|    "   gl_FragColor.a = 1.0;\n" | ||||
|    "}\n", | ||||
|    "void main()\n" | ||||
|    "{\n" | ||||
|    "   gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyzw ) * 0.5 + 0.5;\n" | ||||
|    "   gl_FragColor.a = 1;\n" | ||||
|    "   gl_FragColor.a = 1.0;\n" | ||||
|    "}\n" | ||||
| }; | ||||
|      | ||||
| @@ -125,6 +125,7 @@ Key(unsigned char key, int x, int y) | ||||
|    case 'a': | ||||
|       Anim = !Anim; | ||||
|       glutIdleFunc(Anim ? Idle : NULL); | ||||
|       break; | ||||
|    case 's': | ||||
|       Slice -= step; | ||||
|       break; | ||||
| @@ -193,7 +194,7 @@ LoadAndCompileShader(GLuint shader, const char *text) | ||||
|       GLchar log[1000]; | ||||
|       GLsizei len; | ||||
|       glGetShaderInfoLog(shader, 1000, &len, log); | ||||
|       fprintf(stderr, "noise: problem compiling shader: %s\n", log); | ||||
|       fprintf(stderr, "multinoise: problem compiling shader: %s\n", log); | ||||
|       exit(1); | ||||
|    } | ||||
|    else { | ||||
|   | ||||
| @@ -28,7 +28,7 @@ static const char *FragShaderText = | ||||
|    "   vec4 p;\n" | ||||
|    "   p.xy = gl_TexCoord[0].xy;\n" | ||||
|    "   p.z = Slice;\n" | ||||
|    "   p.w = 0;\n" | ||||
|    "   p.w = 0.0;\n" | ||||
|    "   vec4 n = noise4(p * scale);\n" | ||||
|    "   gl_FragColor = n * Scale + Bias;\n" | ||||
|    "}\n"; | ||||
| @@ -119,6 +119,7 @@ Key(unsigned char key, int x, int y) | ||||
|    case 'a': | ||||
|       Anim = !Anim; | ||||
|       glutIdleFunc(Anim ? Idle : NULL); | ||||
|       break; | ||||
|    case 's': | ||||
|       Slice -= step; | ||||
|       break; | ||||
|   | ||||
| @@ -179,9 +179,9 @@ Init(void) | ||||
|       "\n" | ||||
|       "void main() {\n" | ||||
|       "   vec2 p = gl_FragCoord.xy; \n" | ||||
|       "   if (crs(v1 - v0, p - v0) >= 0 && \n" | ||||
|       "       crs(v2 - v1, p - v1) >= 0 && \n" | ||||
|       "       crs(v0 - v2, p - v2) >= 0) \n" | ||||
|       "   if (crs(v1 - v0, p - v0) >= 0.0 && \n" | ||||
|       "       crs(v2 - v1, p - v1) >= 0.0 && \n" | ||||
|       "       crs(v0 - v2, p - v2) >= 0.0) \n" | ||||
|       "      gl_FragColor = vec4(1.0); \n" | ||||
|       "   else \n" | ||||
|       "      gl_FragColor = vec4(0.5); \n" | ||||
|   | ||||
| @@ -56,7 +56,7 @@ static float rotAngle = 0.; | ||||
|  *  at RAMP1START, and a blue color ramp starting | ||||
|  *  at RAMP2START. The ramps must be a multiple of 16. | ||||
|  */ | ||||
| void init(void) | ||||
| static void init(void) | ||||
| { | ||||
|    int i; | ||||
|  | ||||
| @@ -76,7 +76,7 @@ void init(void) | ||||
|  | ||||
| /*  Draw 2 diagonal lines to form an X | ||||
|  */ | ||||
| void display(void) | ||||
| static void display(void) | ||||
| { | ||||
|    glClear(GL_COLOR_BUFFER_BIT); | ||||
|  | ||||
| @@ -101,7 +101,7 @@ void display(void) | ||||
|    glFlush(); | ||||
| } | ||||
|  | ||||
| void reshape(int w, int h) | ||||
| static void reshape(int w, int h) | ||||
| { | ||||
|    glViewport(0, 0, (GLsizei) w, (GLsizei) h); | ||||
|    glMatrixMode(GL_PROJECTION); | ||||
| @@ -117,7 +117,7 @@ void reshape(int w, int h) | ||||
| } | ||||
|  | ||||
| /* ARGSUSED1 */ | ||||
| void keyboard(unsigned char key, int x, int y) | ||||
| static void keyboard(unsigned char key, int x, int y) | ||||
| { | ||||
|    switch (key) { | ||||
|       case 'r': | ||||
|   | ||||
| @@ -116,6 +116,8 @@ void init(void) | ||||
|    glNewList(startList+3, GL_COMPILE); | ||||
|       gluPartialDisk(qobj, 0.0, 1.0, 20, 4, 0.0, 225.0); | ||||
|    glEndList(); | ||||
|  | ||||
|    gluDeleteQuadric(qobj); | ||||
| } | ||||
|  | ||||
| void display(void) | ||||
|   | ||||
| @@ -10,7 +10,7 @@ LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(T | ||||
| LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS) | ||||
|  | ||||
| PROGS = accum bitmap1 bitmap2 blendeq blendxor copy cursor depth eval fog \ | ||||
| 	font line logo nurb olympic overlay point prim quad select \ | ||||
| 	font line logo nurb olympic overlay point prim rgbtoppm quad select \ | ||||
| 	shape sphere star stencil stretch texture tri wave | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -86,13 +86,19 @@ static ImageRec *ImageOpen(char *fileName) | ||||
|         exit(1); | ||||
|     } | ||||
|     if ((image->file = fopen(fileName, "rb")) == NULL) { | ||||
| 	return NULL; | ||||
|         free(image); | ||||
|         return NULL; | ||||
|     } | ||||
|  | ||||
|     fread(image, 1, 12, image->file); | ||||
|  | ||||
|     if (swapFlag) { | ||||
|         ConvertShort(&image->imagic, 6); | ||||
|         ConvertShort(&image->imagic, 1); | ||||
|         ConvertShort(&image->type, 1); | ||||
|         ConvertShort(&image->dim, 1); | ||||
|         ConvertShort(&image->xsize, 1); | ||||
|         ConvertShort(&image->ysize, 1); | ||||
|         ConvertShort(&image->zsize, 1); | ||||
|     } | ||||
|  | ||||
|     image->tmp = (unsigned char *)malloc(image->xsize*256); | ||||
| @@ -224,6 +230,7 @@ read_rgb_texture(char *name, int *width, int *height) | ||||
|       if (gbuf) free(gbuf); | ||||
|       if (bbuf) free(bbuf); | ||||
|       if (abuf) free(abuf); | ||||
|       ImageClose(image);  | ||||
|       return NULL; | ||||
|     } | ||||
|     ptr = base; | ||||
|   | ||||
| @@ -25,6 +25,7 @@ SOURCES = \ | ||||
| 	arbvptorus.c \ | ||||
| 	arbvpwarpmesh.c \ | ||||
| 	arraytexture.c \ | ||||
| 	auxbuffer.c \ | ||||
| 	blendminmax.c \ | ||||
| 	blendsquare.c \ | ||||
| 	blendxor.c \ | ||||
| @@ -41,6 +42,7 @@ SOURCES = \ | ||||
| 	cva.c \ | ||||
| 	drawbuffers.c \ | ||||
| 	exactrast.c \ | ||||
| 	ext422square.c \ | ||||
| 	floattex.c \ | ||||
| 	fbotest1.c \ | ||||
| 	fbotest2.c \ | ||||
| @@ -66,6 +68,8 @@ SOURCES = \ | ||||
| 	mipmap_limits.c \ | ||||
| 	mipmap_view.c \ | ||||
| 	multipal.c \ | ||||
| 	multitexarray.c \ | ||||
| 	multiwindow.c \ | ||||
| 	no_s3tc.c \ | ||||
| 	packedpixels.c \ | ||||
| 	pbo.c \ | ||||
| @@ -88,10 +92,12 @@ SOURCES = \ | ||||
| 	subtex \ | ||||
| 	subtexrate.c \ | ||||
| 	tex1d.c \ | ||||
| 	texcmp.c \ | ||||
| 	texcompress2.c \ | ||||
| 	texcompsub.c \ | ||||
| 	texdown \ | ||||
| 	texfilt.c \ | ||||
| 	texgenmix.c \ | ||||
| 	texline.c \ | ||||
| 	texobj.c \ | ||||
| 	texobjshare.c \ | ||||
| @@ -101,6 +107,7 @@ SOURCES = \ | ||||
| 	vao-01.c \ | ||||
| 	vao-02.c \ | ||||
| 	vparray.c \ | ||||
| 	vpeval.c \ | ||||
| 	vptest1.c \ | ||||
| 	vptest2.c \ | ||||
| 	vptest3.c \ | ||||
|   | ||||
| @@ -77,10 +77,6 @@ static GLfloat texZ = 0.0; | ||||
| static GLfloat texZ_dir = 0.01; | ||||
| static GLint num_layers; | ||||
|  | ||||
| static PFNGLBINDPROGRAMARBPROC bind_program; | ||||
| static PFNGLPROGRAMSTRINGARBPROC program_string; | ||||
| static PFNGLGENPROGRAMSARBPROC gen_programs; | ||||
|  | ||||
|  | ||||
| static void | ||||
| PrintString(const char *s) | ||||
| @@ -125,13 +121,13 @@ static void Display(void) | ||||
|    glMatrixMode(GL_MODELVIEW); | ||||
|    glLoadIdentity(); | ||||
|  | ||||
|    (*bind_program)(GL_FRAGMENT_PROGRAM_ARB, 0); | ||||
|    glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, 0); | ||||
|    glColor3f(1,1,1); | ||||
|    glRasterPos3f(-0.9, -0.9, 0.0); | ||||
|    sprintf(str, "Texture Z coordinate = %4.1f", texZ); | ||||
|    PrintString(str); | ||||
|  | ||||
|    (*bind_program)(GL_FRAGMENT_PROGRAM_ARB, 1); | ||||
|    glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, 1); | ||||
|    GL_CHECK_ERROR(); | ||||
|    glEnable(GL_TEXTURE_2D_ARRAY_EXT); | ||||
|    GL_CHECK_ERROR(); | ||||
| @@ -159,7 +155,7 @@ static void Display(void) | ||||
|  | ||||
|    glDisable(GL_TEXTURE_2D_ARRAY_EXT); | ||||
|    GL_CHECK_ERROR(); | ||||
|    (*bind_program)(GL_FRAGMENT_PROGRAM_ARB, 0); | ||||
|    glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, 0); | ||||
|    GL_CHECK_ERROR(); | ||||
|  | ||||
|    glutSwapBuffers(); | ||||
| @@ -226,8 +222,8 @@ compile_fragment_program(GLuint id, const char *prog) | ||||
|    int err; | ||||
|  | ||||
|    err = glGetError(); | ||||
|    (*bind_program)(GL_FRAGMENT_PROGRAM_ARB, id); | ||||
|    (*program_string)(GL_FRAGMENT_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB, | ||||
|    glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, id); | ||||
|    glProgramStringARB(GL_FRAGMENT_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB, | ||||
|                      strlen(prog), (const GLubyte *) prog); | ||||
|  | ||||
|    glGetIntegerv(GL_PROGRAM_ERROR_POSITION_ARB, &errorPos); | ||||
| @@ -264,11 +260,6 @@ static void Init(void) | ||||
|    require_extension("GL_MESA_texture_array"); | ||||
|    require_extension("GL_SGIS_generate_mipmap"); | ||||
|  | ||||
|    bind_program = glutGetProcAddress("glBindProgramARB"); | ||||
|    program_string = glutGetProcAddress("glProgramStringARB"); | ||||
|    gen_programs = glutGetProcAddress("glGenProgramsARB"); | ||||
|  | ||||
|  | ||||
|    for (num_layers = 0; textures[num_layers] != NULL; num_layers++) | ||||
|       /* empty */ ; | ||||
|  | ||||
|   | ||||
| @@ -69,7 +69,7 @@ DrawTestImage(void) | ||||
| static int | ||||
| Rand(int max) | ||||
| { | ||||
|    return ((int) random()) % max; | ||||
|    return ((int) rand()) % max; | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -145,7 +145,7 @@ static void Init( void ) | ||||
| { | ||||
|    const char * const ver_string = (const char * const) | ||||
|        glGetString( GL_VERSION ); | ||||
|    float ver = strtof( ver_string, NULL ); | ||||
|    float ver = strtod( ver_string, NULL ); | ||||
|    GLint tex_units; | ||||
|    GLint temp[ 256 ]; | ||||
|  | ||||
|   | ||||
| @@ -39,7 +39,7 @@ GLboolean compiled = GL_TRUE; | ||||
| GLboolean doubleBuffer = GL_TRUE; | ||||
|  | ||||
|  | ||||
| void init( void ) | ||||
| static void init( void ) | ||||
| { | ||||
|    glClearColor( 0.0, 0.0, 0.0, 0.0 ); | ||||
|    glShadeModel( GL_SMOOTH ); | ||||
| @@ -69,7 +69,7 @@ void init( void ) | ||||
| #endif | ||||
| } | ||||
|  | ||||
| void display( void ) | ||||
| static void display( void ) | ||||
| { | ||||
|    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); | ||||
|  | ||||
| @@ -81,7 +81,7 @@ void display( void ) | ||||
|    } | ||||
| } | ||||
|  | ||||
| void keyboard( unsigned char key, int x, int y ) | ||||
| static void keyboard( unsigned char key, int x, int y ) | ||||
| { | ||||
|    switch ( key ) { | ||||
|       case 27: | ||||
| @@ -92,7 +92,7 @@ void keyboard( unsigned char key, int x, int y ) | ||||
|    glutPostRedisplay(); | ||||
| } | ||||
|  | ||||
| GLboolean args( int argc, char **argv ) | ||||
| static GLboolean args( int argc, char **argv ) | ||||
| { | ||||
|     GLint i; | ||||
|  | ||||
|   | ||||
| @@ -128,7 +128,7 @@ static void Init( void ) | ||||
| { | ||||
|    const char * const ver_string = (const char * const) | ||||
|        glGetString( GL_VERSION ); | ||||
|    const float ver = strtof( ver_string, NULL ); | ||||
|    const float ver = strtod( ver_string, NULL ); | ||||
|  | ||||
|  | ||||
|    printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER)); | ||||
|   | ||||
| @@ -16,7 +16,6 @@ | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <unistd.h> | ||||
| #include <GL/glew.h> | ||||
| #include <GL/glut.h> | ||||
|  | ||||
|   | ||||
| @@ -116,7 +116,7 @@ static int set_parameter_batch( GLsizei count, GLfloat * param, | ||||
|  | ||||
|  | ||||
|    for ( i = 0 ; i < (4 * count) ; i++ ) { | ||||
|       param[i] = (GLfloat) random() / (GLfloat) random(); | ||||
|       param[i] = (GLfloat) rand() / (GLfloat) rand(); | ||||
|    } | ||||
|  | ||||
|    /* Try using the "classic" interface. | ||||
| @@ -153,7 +153,7 @@ static int set_parameter_batch( GLsizei count, GLfloat * param, | ||||
|  | ||||
|  | ||||
|    for ( i = 0 ; i < (4 * count) ; i++ ) { | ||||
|       param[i] = (GLfloat) random() / (GLfloat) random(); | ||||
|       param[i] = (GLfloat) rand() / (GLfloat) rand(); | ||||
|    } | ||||
|  | ||||
|    printf("Testing glProgram%sParameters4fvEXT (count = %u)...\n", name, count); | ||||
| @@ -192,6 +192,7 @@ static void Init( void ) | ||||
|    GLfloat * params; | ||||
|    GLint max_program_env_parameters; | ||||
|    GLint max_program_local_parameters; | ||||
|    int i; | ||||
|  | ||||
|  | ||||
|    printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER)); | ||||
| @@ -203,20 +204,20 @@ static void Init( void ) | ||||
|    } | ||||
|  | ||||
|  | ||||
|    program_local_parameter4fv = glutGetProcAddress( "glProgramLocalParameter4fvARB" ); | ||||
|    program_env_parameter4fv = glutGetProcAddress( "glProgramEnvParameter4fvARB" ); | ||||
|    program_local_parameter4fv = (PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) glutGetProcAddress( "glProgramLocalParameter4fvARB" ); | ||||
|    program_env_parameter4fv = (PFNGLPROGRAMENVPARAMETER4FVARBPROC) glutGetProcAddress( "glProgramEnvParameter4fvARB" ); | ||||
|  | ||||
|    get_program_local_parameterfv = glutGetProcAddress( "glGetProgramLocalParameterfvARB" ); | ||||
|    get_program_env_parameterfv = glutGetProcAddress( "glGetProgramEnvParameterfvARB" ); | ||||
|    get_program_local_parameterfv = (PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) glutGetProcAddress( "glGetProgramLocalParameterfvARB" ); | ||||
|    get_program_env_parameterfv = (PFNGLGETPROGRAMENVPARAMETERFVARBPROC) glutGetProcAddress( "glGetProgramEnvParameterfvARB" ); | ||||
|  | ||||
|    bind_program = glutGetProcAddress( "glBindProgramARB" ); | ||||
|    get_program = glutGetProcAddress( "glGetProgramivARB" ); | ||||
|    bind_program = (PFNGLBINDPROGRAMARBPROC) glutGetProcAddress( "glBindProgramARB" ); | ||||
|    get_program = (PFNGLGETPROGRAMIVARBPROC) glutGetProcAddress( "glGetProgramivARB" ); | ||||
|  | ||||
|    if ( glutExtensionSupported("GL_EXT_gpu_program_parameters") ) { | ||||
|       printf("GL_EXT_gpu_program_parameters available, testing that path.\n"); | ||||
|  | ||||
|       program_local_parameters4fv = glutGetProcAddress( "glProgramLocalParameters4fvEXT" ); | ||||
|       program_env_parameters4fv = glutGetProcAddress( "glProgramEnvParameters4fvEXT" ); | ||||
|       program_local_parameters4fv = (PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) glutGetProcAddress( "glProgramLocalParameters4fvEXT" ); | ||||
|       program_env_parameters4fv = (PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) glutGetProcAddress( "glProgramEnvParameters4fvEXT" ); | ||||
|    } | ||||
|    else { | ||||
|       printf("GL_EXT_gpu_program_parameters not available.\n"); | ||||
| @@ -238,6 +239,10 @@ static void Init( void ) | ||||
|  | ||||
|    params = malloc(max_program_env_parameters * 4 * sizeof(GLfloat)); | ||||
|  | ||||
|    for (i = 0; i < max_program_env_parameters * 4; i++) { | ||||
|       params[i] = 0.0F; | ||||
|    } | ||||
|  | ||||
|    pass &= set_parameter_batch(max_program_env_parameters, params, "Env", | ||||
| 			       program_env_parameter4fv, | ||||
| 			       program_env_parameters4fv, | ||||
|   | ||||
| @@ -274,9 +274,9 @@ static void Init( void ) | ||||
|    if (atof( ver_string ) < 2.0) { | ||||
|       use20syntax = 0; | ||||
|    } | ||||
|    stencil_func_separate = glutGetProcAddress( "glStencilFuncSeparate" ); | ||||
|    stencil_func_separate_ati = glutGetProcAddress( "glStencilFuncSeparateATI" ); | ||||
|    stencil_op_separate = glutGetProcAddress( "glStencilOpSeparate" ); | ||||
|    stencil_func_separate = (PFNGLSTENCILFUNCSEPARATEPROC) glutGetProcAddress( "glStencilFuncSeparate" ); | ||||
|    stencil_func_separate_ati = (PFNGLSTENCILFUNCSEPARATEATIPROC) glutGetProcAddress( "glStencilFuncSeparateATI" ); | ||||
|    stencil_op_separate = (PFNGLSTENCILOPSEPARATEPROC) glutGetProcAddress( "glStencilOpSeparate" ); | ||||
|  | ||||
|    printf("\nAll 5 squares should be the same color.\n"); | ||||
| } | ||||
|   | ||||
| @@ -162,7 +162,7 @@ MeasureDownloadRate(void) | ||||
|    const int image_bytes = align(w * h * BytesPerTexel(Format), ALIGN); | ||||
|    const int bytes = image_bytes * NR_TEXOBJ; | ||||
|    GLubyte *orig_texImage, *orig_getImage; | ||||
|    GLubyte *texImage, *getImage; | ||||
|    GLubyte *texImage; | ||||
|    GLdouble t0, t1, time; | ||||
|    int count; | ||||
|    int i; | ||||
| @@ -176,13 +176,14 @@ MeasureDownloadRate(void) | ||||
|    orig_getImage = (GLubyte *) malloc(image_bytes + ALIGN); | ||||
|    if (!orig_texImage || !orig_getImage) { | ||||
|       DownloadRate = 0.0; | ||||
|       free(orig_texImage); | ||||
|       free(orig_getImage); | ||||
|       return; | ||||
|    } | ||||
|  | ||||
|    printf("alloc %p %p\n", orig_texImage, orig_getImage); | ||||
|  | ||||
|    texImage = (GLubyte *)align((unsigned long)orig_texImage, ALIGN); | ||||
|    getImage = (GLubyte *)align((unsigned long)orig_getImage, ALIGN);    | ||||
|  | ||||
|    for (i = 1; !(((unsigned long)texImage) & i); i<<=1) | ||||
|       ; | ||||
|   | ||||
| @@ -124,10 +124,10 @@ static void Init( void ) | ||||
|       exit(2); | ||||
|    } | ||||
|  | ||||
|    bind_vertex_array = glutGetProcAddress( "glBindVertexArrayAPPLE" ); | ||||
|    gen_vertex_arrays = glutGetProcAddress( "glGenVertexArraysAPPLE" ); | ||||
|    delete_vertex_arrays = glutGetProcAddress( "glDeleteVertexArraysAPPLE" ); | ||||
|    is_vertex_array = glutGetProcAddress( "glIsVertexArrayAPPLE" ); | ||||
|    bind_vertex_array = (PFNGLBINDVERTEXARRAYAPPLEPROC) glutGetProcAddress( "glBindVertexArrayAPPLE" ); | ||||
|    gen_vertex_arrays = (PFNGLGENVERTEXARRAYSAPPLEPROC) glutGetProcAddress( "glGenVertexArraysAPPLE" ); | ||||
|    delete_vertex_arrays = (PFNGLDELETEVERTEXARRAYSAPPLEPROC) glutGetProcAddress( "glDeleteVertexArraysAPPLE" ); | ||||
|    is_vertex_array = (PFNGLISVERTEXARRAYAPPLEPROC) glutGetProcAddress( "glIsVertexArrayAPPLE" ); | ||||
|  | ||||
|  | ||||
|    (*gen_vertex_arrays)( 1, & obj ); | ||||
|   | ||||
| @@ -125,10 +125,10 @@ static void Init( void ) | ||||
|       exit(2); | ||||
|    } | ||||
|  | ||||
|    bind_vertex_array = glutGetProcAddress( "glBindVertexArrayAPPLE" ); | ||||
|    gen_vertex_arrays = glutGetProcAddress( "glGenVertexArraysAPPLE" ); | ||||
|    delete_vertex_arrays = glutGetProcAddress( "glDeleteVertexArraysAPPLE" ); | ||||
|    is_vertex_array = glutGetProcAddress( "glIsVertexArrayAPPLE" ); | ||||
|    bind_vertex_array = (PFNGLBINDVERTEXARRAYAPPLEPROC) glutGetProcAddress( "glBindVertexArrayAPPLE" ); | ||||
|    gen_vertex_arrays = (PFNGLGENVERTEXARRAYSAPPLEPROC) glutGetProcAddress( "glGenVertexArraysAPPLE" ); | ||||
|    delete_vertex_arrays = (PFNGLDELETEVERTEXARRAYSAPPLEPROC) glutGetProcAddress( "glDeleteVertexArraysAPPLE" ); | ||||
|    is_vertex_array = (PFNGLISVERTEXARRAYAPPLEPROC) glutGetProcAddress( "glIsVertexArrayAPPLE" ); | ||||
|  | ||||
|  | ||||
|    (*gen_vertex_arrays)( 1, & obj ); | ||||
|   | ||||
| @@ -94,16 +94,16 @@ GLfloat colorPoints[4][4][4] = | ||||
| }; | ||||
|  | ||||
|  | ||||
| void | ||||
| static void | ||||
| initlights(void) | ||||
| { | ||||
| #if 0 /* no lighting for now */ | ||||
|     GLfloat ambient[] = {0.2, 0.2, 0.2, 1.0}; | ||||
|     GLfloat position[] = {0.0, 0.0, 2.0, 1.0}; | ||||
|     GLfloat mat_diffuse[] = {0.6, 0.6, 0.6, 1.0}; | ||||
|     GLfloat mat_specular[] = {1.0, 1.0, 1.0, 1.0}; | ||||
|     GLfloat mat_shininess[] = {50.0}; | ||||
|  | ||||
| #if 0 /* no lighting for now */ | ||||
|     glEnable(GL_LIGHTING); | ||||
|     glEnable(GL_LIGHT0); | ||||
|  | ||||
| @@ -116,7 +116,7 @@ initlights(void) | ||||
| #endif | ||||
| } | ||||
|  | ||||
| void | ||||
| static void | ||||
| display(void) | ||||
| { | ||||
|    glClearColor(.3, .3, .3, 0); | ||||
| @@ -130,7 +130,7 @@ display(void) | ||||
|     glFlush(); | ||||
| } | ||||
|  | ||||
| void | ||||
| static void | ||||
| myinit(int argc, char *argv[]) | ||||
| { | ||||
|     glClearColor(0.0, 0.0, 0.0, 1.0); | ||||
| @@ -186,7 +186,7 @@ myinit(int argc, char *argv[]) | ||||
|     } | ||||
| } | ||||
|  | ||||
| void | ||||
| static void | ||||
| myReshape(int w, int h) | ||||
| { | ||||
|     glViewport(0, 0, w, h); | ||||
|   | ||||
| @@ -88,7 +88,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -73,7 +73,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -61,7 +61,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(0); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -38,7 +38,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|     glutPostRedisplay(); | ||||
| } | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(0); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -87,7 +87,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -74,7 +74,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -76,7 +76,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -81,7 +81,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -93,7 +93,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -103,7 +103,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -118,7 +118,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -99,7 +99,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -102,7 +102,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -66,7 +66,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -66,7 +66,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -66,7 +66,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -66,7 +66,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -59,7 +59,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|     case 27: | ||||
| 	exit(1); | ||||
|     default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|     glutPostRedisplay(); | ||||
| } | ||||
|   | ||||
| @@ -96,7 +96,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -63,7 +63,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -63,7 +63,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -55,7 +55,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -88,7 +88,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -105,7 +105,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
| @@ -62,7 +62,7 @@ static void Key(unsigned char key, int x, int y) | ||||
|       case 27: | ||||
| 	exit(1); | ||||
|       default: | ||||
| 	return; | ||||
| 	break; | ||||
|     } | ||||
|  | ||||
|     glutPostRedisplay(); | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user