I WANT MAKE A TEXTURE ON A SPHERE,EXAMPLES AS FOLLOW:
AUX_RGBImageRec* myimage;
unsigned char *image;
myimage=auxDIBImageLoad(_T("ground.bmp"));
glPixelStorei(GL_UNPACK_ALIGNMENT,1);
image = (BYTE *)malloc(256*256*4);
gluScaleImage(GL_RGB,myimage->sizeX,myimage->sizeY,GL_UNSIGNED_BYTE,myimage->data,256,256,GL_UNSIGNED_BYTE,image);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_REPEAT);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexEnvf(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_REPLACE);
glTexImage2D(GL_TEXTURE_2D,0,3,256,256,0,GL_RGB,GL_UNSIGNED_BYTE,image);
//AUTOMATICAL TEXTURE MAPPING
glTexGeni(GL_S,GL_TEXTURE_GEN_MODE,GL_SPHERE_MAP);
glTexGeni(GL_T,GL_TEXTURE_GEN_MODE,GL_SPHERE_MAP);
glTexGenfv(GL_S,GL_EYE_PLANE,curEff);
glTexGenfv(GL_T,GL_EYE_PLANE,curEff);
//START TEXTURE MAPPING
glEnable(GL_TEXTURE_GEN_S);
glEnable(GL_TEXTURE_GEN_T);
glEnable(GL_TEXTURE_2D);
glEnable(GL_AUTO_NORMAL);
glEnable(GL_NORMALIZE);
GLUquadricObj *quadObj;
quadObj = gluNewQuadric();
gluQuadricDrawStyle(quadObj,GLU_FILL);
gluQuadricNormals(quadObj,GLU_SMOOTH);
gluSphere(quadObj,1.2,32,32);
//auxSolidSphere(1.0);
glPopMatrix();
glDisable(GL_TEXTURE_GEN_S);
glDisable(GL_TEXTURE_GEN_T);
glDisable(GL_TEXTURE_2D);
glDisable(GL_AUTO_NORMAL);
glDisable(GL_NORMALIZE);
I DON’T KNOW WHY THE TEXTURE CAN NOT ROTATE WITH THE SPHERE?