Eclairage et matériaux
Par Xavier Michelon


 
 
Sources lumineuses :

Avec OpenGL, vous pouvez créer une scène contenant jusqu'à huit sources de lumière. Ces sources peuvent être de type 'omnidirectionnel' ( la source émet de la lumière uniformément dans toutes les directions, comme le soleil), ou 'spot' (la lumière n'est émise que dans un cône).

Une source de lumière est caractérisée par 10 paramètres qu'on peut classer en 4 catégories :

1 - Les paramètres de lumière
La lumière émise par une source est formée de trois composantes : la plus importante, la composante diffuse, est réfléchie par un objet dans toutes les directions. La composante spéculaire correspond à la lumière qui est réfléchie dans une direction privilégiée (et qui est donc à l'origine de l'effet de brillance). La composante ambiante est la plus difficile à appréhender. La lumière ambiante d'une scène est une lumière non directionnelle, que l'on peut considérer comme issue des multiples réflexions de rayons lumineux. OpenGL vous permet d'affecter une lumière ambiante pour toute la scène. La composante ambiante d'une source ajoute une contribution à cette lumière ambiante globale.
Vous avez la possibilité d'affecter une couleur à chacune des trois composantes. En affectant un bleu clair à la composante diffuse d'une source, vous donnez une teinte globale à la lumière qui en est issue. En affectant un rouge à la composante spéculaire, vous modifiez l'apparence des reflets de cette source sur les objets de la scène.

Les paramètres de lumière diffuse, spéculaire et ambiante sont difficiles à appréhender pour le novice. Comme rien ne vaut la pratique, la meilleure chose à faire est d'expérimenter. Je vous conseille de modifier le programme exemple de façon à pouvoir faire varier les paramètres de lumière d'une des sources par l'intermédiaire du clavier et observez l'influence de chacune des composantes sur le rendu de la scène.

2 - Le paramètre de position
Comme son nom l'indique, il permet de définir la position de la source de lumière dans la scène.

3 - Les paramètres de spot
L'angle de coupure, illustré sur la figure 1, permet de définir le type de source que vous souhaitez utiliser : si l'angle vaut 180°, vous utilisez une source de lumière omnidirectionnelle. Si l'angle est compris entre 0 et 90°, vous définissez un spot, et vous pouvez alors modifier les deux autres paramètres de spot : la direction dans laquelle il pointe et l'exposant du spot. Ce dernier paramètre permet de faire varier la concentration de la lumière à l'intérieur du cône définissant le spot. Si l'exposant vaut 0, la lumière est répartie également dans toutes les directions définies par le cône. Plus vous faites croître la valeur de l'exposant, plus la lumière sera concentrée autour de l'axe donné par le paramètre de direction.

Figure 5 : Le paramètre angle de coupure 'a' d'un spot

 

4 - Les paramètres d'atténuation
Ils permettent de prendre en compte le phénomène physique suivant : plus un objet est éloigné d'une source de lumière, moins il est éclairé par cette dernière. Les paramètres d'atténuation sont au nombre de 3 : le facteur d'atténuation constante, le facteur d'atténuation linéaire et le facteur d'atténuation quadratique. Si on note respectivement Ac, Al et Aq ces trois coefficients, l'intensité reçue par un point P situé à une distance d de la source lumineuse est divisée par Ac+Al*d+Aq*d*d. Par défaut, Ac=1 et Al=Aq=0, ce qui correspond à une atténuation nulle (division par 1).