Partager via


Éclairage spéculaire

L’éclairage spéculaire identifie les mises en surbrillance spéculaires brillantes qui se produisent lorsque la lumière touche la surface d’un objet et se reflète vers la caméra. L’éclairage spéculaire est plus intense que la lumière diffuse et tombe plus rapidement sur la surface de l’objet. Il faut plus de temps pour calculer l’éclairage spéculaire que l’éclairage diffus, mais l’avantage de l’utiliser est qu’il ajoute des détails importants à une surface.

La modélisation de la réflexion spéculaire nécessite que le système sache dans quelle direction la lumière se déplace et la direction vers l’œil du spectateur. Le système utilise une version simplifiée du modèle de réflexion spéculaire de Phong, qui utilise un vecteur à mi-chemin pour estimer l’intensité de la réflexion spéculaire.

L’état d’éclairage par défaut ne calcule pas les surbrillances spéculaires.

Équation d’éclairage spéculaire

L’éclairage spéculaire est décrit par l’équation suivante.

Éclairage spéculaire = Cs * sum[Ls * (N · H)P * Atten * Spot]

Les variables, leurs types et leurs plages sont les suivants :

Paramètre Valeur par défaut Type Description
Cs (0,0,0,0) Transparence rouge, verte, bleue et alpha (valeurs à virgule flottante) Couleur spéculaire.
Sum N/A N/A Somme du composant spéculaire de chaque lumière.
N N/A Vecteur 3D (valeurs à virgule flottante x, y et z) Vertex normal.
H N/A Vecteur 3D (valeurs à virgule flottante x, y et z) Vecteur à mi-chemin. Consultez la section sur le vecteur à mi-parcours.
P 0.0 Virgule flottante Puissance de réflexion spéculaire. La plage est comprise entre 0 et +infini
Ls (0,0,0,0) Transparence rouge, verte, bleue et alpha (valeurs à virgule flottante) Couleur spéculaire claire.
Atten N/A Virgule flottante Valeur d’atténuation légère. Voir Atténuation et facteur à la une.
Zone N/A Virgule flottante Facteur à la une. Voir Atténuation et facteur à la une.

 

La valeur de Cs est :

  • couleur de vertex 1, si la source du matériau spéculaire est la couleur diffuse du vertex et que la première couleur de vertex est fournie dans la déclaration de vertex.
  • couleur de vertex 2, si la source de matériau spéculaire est la couleur de vertex spéculaire et que la deuxième couleur de vertex est fournie dans la déclaration de vertex.
  • couleur spéculaire du matériau

Note Si l’une des options de source du matériau spéculaire est utilisée et que la couleur de vertex n’est pas fournie, la couleur spéculaire du matériau est utilisée.

 

Les composants spéculaires sont serrés pour être de 0 à 255, après que tous les voyants ont été traités et interpolés séparément.

Vecteur à mi-chemin

Le vecteur intermédiaire (H) existe à mi-chemin entre deux vecteurs : le vecteur d’un vertex d’objet vers la source de lumière et le vecteur d’un vertex d’objet vers la position de la caméra. Direct3D fournit deux façons de calculer le vecteur à mi-parcours. Lorsque les surbrillances spéculaires relatives à la caméra sont activées (au lieu des surbrillances spéculaires orthogonales), le système calcule le vecteur à mi-parcours à l’aide de la position de la caméra et de la position du sommet, ainsi que du vecteur de direction de la lumière. La formule suivante illustre cela.

H = norm(norm(Cp - Vp) + Ldir)

 

Paramètre Valeur par défaut Type Description
Cp N/A Vecteur 3D (valeurs à virgule flottante x, y et z) Position de l'appareil photo.
Vp N/A Vecteur 3D (valeurs à virgule flottante x, y et z) Position du sommet.
Ldir N/A Vecteur 3D (valeurs à virgule flottante x, y et z) Vecteur de direction de la position du vertex à la position de lumière.

 

La détermination du vecteur à mi-parcours de cette manière peut être gourmande en ressources informatiques. En guise d’alternative, l’utilisation de surbrillances spéculaires orthogonales (au lieu de surbrillances spéculaires relatives à la caméra) indique au système d’agir comme si le point de vue était infiniment distant sur l’axe des Z. Cela se reflète dans la formule suivante.

H = norm((0,0,1) + Ldir)

Ce paramètre est moins gourmand en calculs, mais beaucoup moins précis. Il est donc mieux utilisé par les applications qui utilisent la projection orthogonale.

Exemple

Dans cet exemple, l’objet est coloré à l’aide de la couleur de lumière spéculaire de la scène et d’une couleur spéculaire matérielle.

Selon l’équation, la couleur résultante pour les sommets de l’objet est une combinaison de la couleur du matériau et de la couleur claire.

Les deux illustrations suivantes montrent la couleur du matériau spéculaire, qui est gris, et la couleur claire spéculaire, qui est blanche.

illustration d’une image de sphère grised’une sphère blanche

La mise en surbrillance spéculaire résultante est illustrée dans l’illustration suivante.

illustration de la mise en surbrillance spéculaire

La combinaison de la mise en surbrillance spéculaire avec l’éclairage ambiant et diffus produit l’illustration suivante. Avec les trois types d’éclairage appliqués, cela ressemble plus clairement à un objet réaliste.

illustration de la combinaison de la mise en surbrillance spéculaire, de l’éclairage ambiant et de l’éclairage diffus

L’éclairage spéculaire est plus intensif à calculer que l’éclairage diffus. Il est généralement utilisé pour fournir des indices visuels sur le matériau de surface. La mise en surbrillance spéculaire varie en taille et en couleur selon le matériau de la surface.

Formules mathématiques d’éclairage