Eclairage et matériaux
Par Xavier Michelon


 
 
Eclairage et matériaux réalistes :
 
Dans tous les programmes que nous avons écrits jusqu'à présent, nous nous sommes contentés d'affecter à chacun des sommets de nos polygones une couleur fixe. Aucun algorithme de gestion de l'illumination n'a été mis en œuvre. Un sommet dont la couleur est définie comme rouge apparaît toujours à l'écran avec le même rouge, quelque soit le point de vue depuis lequel on l'observe. Dans la réalité, un point de couleur rouge apparaîtra différemment suivant l'éclairage auquel il est soumis et l'angle sous lequel vous l'observez. OpenGL permet d'effectuer un rendu prenant en compte l'illumination des objets. Pour simuler de manière réaliste une scène tridimensionnelle il est nécessaire de reproduire les lois physiques qui régissent la lumière. Ces lois sont complexes, et il est impossible de les reproduire exactement. On se contente donc de choisir un modèle mathématique aussi proche que possible de la réalité. En fonction de l'application à laquelle il est destiné, le modèle d'illumination choisi permettra d'obtenir des résultats plus ou moins réalistes et rapides. Le modèle utilisé par le moteur de rendu de Blender donne des résultats beaucoup plus réalistes que celui d'OpenGL. En revanche, le rendu d'une scène OpenGL est bien plus rapide.

Pour étudier le modèle d'illumination utilisé par OpenGL, il nous faut aborder 3 points :

- Les sources lumineuses : quels sont les paramètres permettant de définir une source de lumière ?


- Les matériaux : Une brique ne réfléchit pas la lumière de la même manière qu'une plaque d'aluminium : le matériau est un facteur primordial pour l'éclairage d'une scène.


- L'algorithme de remplissage : calculer l'éclairage en chaque pixel de l'image est trop coûteux en temps. OpenGL utilise une astuce pour accélérer le rendu.