J'essaye d'allumer une scène avec quelques objets simples. J'ai deux lumières, une lumière de point et une lumière de point et l'éclairage semble fonctionner correctement sur les objets dans la scène, mais quand il s'agit du sol texturé est seulement affecté par l'ambiant et je ne peux pas comprendre pourquoi. Je pensais que cela avait quelque chose à voir avec les normaux en le définissant comme je le pense, en le montrant. si j'enlève la texture, j'obtiens les mêmes résultats. qu'avais-je fait de mal?Pourquoi mon polygone de sol n'est-il pas affecté par la lumière spéculaire et diffuse?
voici mon code:
void drawFloor()
{
setMaterial(mat_specularFloor, mat_specularFloor, mat_specularFloor, mat_specularFloor);
//glColor3f(1.0, 1.0, 1.0);
glEnable(GL_TEXTURE_2D);
//glEnable(GL_NORMALIZE);
glBindTexture(GL_TEXTURE_2D, g_Texture[0]);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
//glColor3f(.5, 0.5, 0.7);
glBegin(GL_TRIANGLE_FAN);
glNormal3f(0.0f, 1.0f, 0.0f);
glTexCoord2f(0.0f, 0.0f);
glVertex3f(-50, 0, -50);
glTexCoord2f(10.0f, 0.0f);
glVertex3f(50, 0, -50);
glTexCoord2f(10.0f, 10.0f);
glVertex3f(50, 0, 50);
glTexCoord2f(0.0f, 10.0f);
glVertex3f(-50, 0, 50);
glEnd();
glDisable(GL_TEXTURE_2D);
}
Lorsque vous dites que ce n'est pas affecté: la lumière est-elle à l'arrêt? – Tommy
Avez-vous activé 'GL_LIGHTING' pour dessiner le sol? – ProXicT
Oui, les deux lumières sont fixes, vous pouvez déplacer le projecteur avec le clavier. GL_LIGHTING était activé avant de dessiner le sol. en fait, la table et la théière sont dessinées juste après le sol et elles sont très bien éclairées. –