Bonjour à tous,

J'ai crée un programme qui charge et affiche un modèle 3D. Pour rendre la scène correctement, j'ai placé un éclairage et calculé les normales. Mon modèle est constitué de plusieurs objets, que je souhaiterais afficher dans des couleurs bien distinctes (rouge, bleu, vert, etc.). Je n'utilise pas de textures.

Mon problème est que mon objet reste soit tout gris, soit tous les objets se colorent de la même couleur.

J'ai testé tout ce que j'ai pu trouver, mais je dois avoir loupé quelque chose d'intéressant.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
	glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, c1);
Un code comme celui ci fonctionne pour un objet, mais si j'essaye de le rappeler avec une autre couleur pour un deuxième objet, le premier disparais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
glEnable(GL_COLOR_MATERIAL); // Must be called to use glColorMaterial()
    glColorMaterial(GL_FRONT, GL_SPECULAR);
Ceci c'est révélé inefficace aussi, au mieux j'avais toujours l'image en noir et blanc, ou bien je n'avais plus rien du tout.

J'avoue que je suis pas mal perdu.

Merci d'avance pour toute l'aide que vous pourriez m'apporter.