Texture Coordinate Generation

Rather than having to explicitly provide a texture coordinate for each vertex, we can use texture coordinate generation (texgen) functions to have OpenGL automatically compute texture coordinates.

This uses the function glTexGen, and the glEnable modes GL_TEXTURE_GEN_S & GL_TEXTURE_GEN_T.



GLfloat planeCoefficients[4] = { 1, 0, 0, 0 };
glTexGeni(GL_S, GL_TEXTURE_GEN_MODE, GL_OBJECT_LINEAR);
glTexGenfv(GL_S, GL_OBJECT_PLANE, planeCoefficients);
glEnable(GL_TEXTURE_GEN_S);

glBegin(GL_QUADS);
 glVertex3f(-3.25, -1, 0);
 glVertex3f(-1.25, -1, 0);
 glVertex3f(-1.25, 1, 0);
 glVertex3f(-3.25, 1, 0);
glEnd();


Example: contour.cpp



next