Autres effets
Culling
Le culling consiste a n'afficher que les poygones dont les sommets vont dans le sens des aiguilles d'une montre (CW : clockwise) ou dans l'autre sens (CCW : counterclockwise).
Pour l'activer :
glFrontFace(GL_CCW);
// ou : glFrontFace(GL_CW);
glEnable(GL_CULL_FACE);
L'interet est un gain de temps : les faces cachees du cube ne sont pas
calculees. Le probleme est qu'il faut faire attention au sens des points. Ne pas
l'utiliser en meme temps que la transparence (ca parait normal mais une fois j'ai passe 20
minutes a cherche pourquoi mon cube n'etait pas transparent).
Brouillard
Le brouillard est une astuce pour cacher certaines parties du decor qui ne sont pas affichees lorsqu'elles sont trop eloignees.
Pour l'activer :
glFogi(GL_FOG_MODE, GL_LINEAR);
// GL_LINEAR, GL_EXP ou GL_EXP2
glFogf(GL_FOG_START, 0.1);
glFogf(GL_FOG_END, 25);
GLfloat fog_c[] = {0.7f, 0.7f, 0.7f, 1.0f}; //
couleur du brouillard, ici gris clair
glFogfv(GL_FOG_COLOR, fog_c);
glEnable(GL_FOG);
Il est inutile de dessiner plus loin que le brouillard, donc lors de
l'appel de gluPerspective (ou la fonction appellee pour fixer le back clipping plane),
limiter la distance max a la limite du brouillard.
GL_FOG_MODE fixe la facon dont le brouillard se densifie : lineaire,
exponentielle, ou exponentielle de distance au carre.
Code source : vraiment utile ?