Eclairage et matériaux Par Xavier Michelon |
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).
|