Here is my code detail. I can compile and run, but can't see the texture. I have attached the texture file.
/************************************************/
#include <IL/il.h>
#include <IL/ilu.h>
#include <IL/ilut.h>
#include <GL/glut.h> // Need to include it here because the GL* types are required
GLuint Tex1; // Textures
void
init(void)
{
//
//// Setup other misc features.
glEnable(GL_LIGHTING);
glEnable(GL_NORMALIZE);
glShadeModel(GL_SMOOTH);
//
float ambient[] = {1.0f, 1.0f, 1.0f, 1.0f};
float diffuse[] = {1.0f, 1.0f, 1.0f, 1.0f};
float position[] = {5.0f, 20.0f, 5.0f, 1.0f};
float specular[] = {1.0f, 1.0f, 1.0f, 1.0f};
glEnable(GL_LIGHTING);
glEnable( GL_LIGHT0);
glLightfv(GL_LIGHT0, GL_DIFFUSE, ambient);
glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse);
glLightfv(GL_LIGHT0, GL_POSITION, position);
glLightfv(GL_LIGHT0, GL_SPECULAR, specular);
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
float shininess = 50.0f;
glEnable(GL_COLOR_MATERIAL);
glMaterialf( GL_FRONT, GL_SHININESS, shininess);
glMaterialfv(GL_FRONT, GL_SPECULAR, specular);
?
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST_MIPMAP_NEAREST);
// Associate a variable to a image and load it
Tex1 = ilutGLLoadImage(TEXT(
"textures/1.bmp"));
ILenum Error;
while ((Error = ilGetError()) != IL_NO_ERROR) {
printf(
"%d: %s/n", Error, iluErrorString(Error));
}
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
}
void
display(void)
{
glLoadIdentity ();
/* clear the matrix */
/* viewing transformation */
gluLookAt (0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
?
glEnable(GL_TEXTURE_2D);
glBindTexture( GL_TEXTURE_2D, Tex1);
glBegin (GL_QUADS);
glTexCoord2f (0.0, 0.0);
glVertex3f (-0.5, -0.5, 0.0);
glTexCoord2f (1.0, 0.0);
glVertex3f (0.5, -0.5, 0.0);
glTexCoord2f (1.0, 1.0);
glVertex3f (0.5, 0.5, 0.0);
glTexCoord2f (0.0, 1.0);
glVertex3f (-0.5, 0.5, 0.0);
glEnd ();
glDisable(GL_TEXTURE_2D);
glFlush ();
}
void
reshape (int w, int h)
{
glViewport (0, 0, (GLsizei) w, (GLsizei) h);
glMatrixMode (GL_PROJECTION);
glLoadIdentity ();
gluPerspective(60.0, 1.0, 1.5, 20.0);
glMatrixMode (GL_MODELVIEW);
}
int
main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (500, 500);
glutInitWindowPosition (100, 100);
glutCreateWindow (argv[0]);
ilInit();
iluInit();
ilutRenderer(ILUT_OPENGL);
init ();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
return
0;
}
?
?
/**********************************************/