int checkError(int line, char *file)
{
if((errCode = glGetError()) != GL_NO_ERROR) {
- errString = (char *)gluErrorString(errCode);
+ errString = (GLubyte *)gluErrorString(errCode);
fprintf(stderr, "OpenGL error: %s detected at line %d in file %s\n", errString, line, file);
exit(1);
}
/* mipmaps make the image look much nicer */
if (do_mipmap)
a=gluBuild2DMipmaps(GL_TEXTURE_2D, format, width, height, format, GL_UNSIGNED_BYTE, image);
- else
- glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
- format, GL_UNSIGNED_BYTE, image);
+ else
+ {
+ clear_gl_error();
+ glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
+ format, GL_UNSIGNED_BYTE, image);
+ check_gl_error("texture");
+ }
free(image);
}
quad_list = glGenLists(1);
glNewList(quad_list,GL_COMPILE);
+#if 1
glBegin(GL_QUADS);
glColor4f(1,0,0,.4); glNormal3f(0,0,1); glTexCoord2f(0,0); glVertex2f(-1, -1);
glColor4f(0,1,0,.4); glNormal3f(0,0,1); glTexCoord2f(0,1); glVertex2f(-1, 1);
glColor4f(0,0,1,.4); glNormal3f(0,0,1); glTexCoord2f(1,1); glVertex2f( 1, 1);
glColor4f(1,1,1,1); glNormal3f(0,0,1); glTexCoord2f(1,0); glVertex2f( 1, -1);
+#else
+ glBegin(GL_TRIANGLE_STRIP);
+ glColor4f(0,1,0,.4); glNormal3f(0,0,1); glTexCoord2f(0,1); glVertex2f(-1, 1);
+ glColor4f(1,0,0,.4); glNormal3f(0,0,1); glTexCoord2f(0,0); glVertex2f(-1, -1);
+ glColor4f(0,0,1,.4); glNormal3f(0,0,1); glTexCoord2f(1,1); glVertex2f( 1, 1);
+ glColor4f(1,1,1,.4); glNormal3f(0,0,1); glTexCoord2f(1,0); glVertex2f( 1, -1);
+#endif
glEnd();
glEndList();
-
quads = (struct quad *) malloc(sizeof(struct quad) * num_quads);
for (i=0; i < num_quads; i++)
{
quads[i].ty = 0.;
quads[i].tz = -10;
- quads[i].drx = drand48() * 5.;
- quads[i].dry = drand48() * 5.;
+ quads[i].drx = frand(5.0);
+ quads[i].dry = frand(5.0);
quads[i].drz = 0;
}
}
}
}
-GLvoid drawScene(GLvoid)
+GLvoid drawScene(void)
{
checkError(__LINE__, __FILE__);