Quelle est la base physique de la distinction diffuse et spéculaire?

34

La manière classique d'ombrer les surfaces en infographie en temps réel associe un terme diffus (lambertien) et un terme spéculaire, très probablement Phong ou Blinn-Phong.

Image de Wikipedia

Désormais, avec la tendance au rendu basé physiquement et donc aux modèles matériels dans des moteurs tels que Frostbite , Unreal Engine ou Unity 3D, ces BRDF ont changé. Par exemple (un modèle assez universel), le dernier moteur Unreal utilise toujours le lambertien diffus, mais en combinaison avec le modèle microfacet Cook-Torrance pour la réflexion spéculaire (en utilisant notamment GGX / Trowbridge-Reitz et une approximation modifiée de Slick pour le terme de Fresnel ). En outre, une valeur "Metalness" est utilisée pour distinguer le conducteur du diélectrique.

Pour les diélectriques, diffuse est coloré en utilisant l'albédo du matériau, tandis que le spéculaire est toujours incolore. Pour les métaux, diffuse n'est pas utilisé et le terme spéculaire est multiplié par l'albédo du matériau.

En ce qui concerne les matériaux physiques du monde réel, existe-t-il une séparation stricte entre le diffus et le spéculaire et, dans l'affirmative, d'où vient-elle? Pourquoi l'un est-il coloré alors que l'autre ne l'est pas? Pourquoi les conducteurs se comportent-ils différemment?

David Kuri
la source

Réponses:

30

Pour commencer, je suggère fortement de lire la présentation Siggraph de Naty Hoffman couvrant la physique du rendu. Cela dit, je vais essayer de répondre à vos questions spécifiques en empruntant des images de sa présentation.

En regardant une seule particule de lumière atteignant un point à la surface d'un matériau, il peut faire 2 choses: réfléchir ou réfracter. La lumière réfléchie rebondira sur la surface, comme un miroir. La lumière réfractée rebondit à l'intérieur du matériau et peut en sortir à une certaine distance de l'endroit où il est entré. Enfin, chaque fois que la lumière interagit avec les molécules du matériau, elle perd de l’énergie. S'il perd suffisamment de son énergie, nous considérons qu'il est complètement absorbé.

Pour citer Naty, "la lumière est composée d'ondes électromagnétiques. Les propriétés optiques d'une substance sont donc étroitement liées à ses propriétés électriques". C'est pourquoi nous regroupons les matériaux en tant que métaux ou non-métaux.

Les non métaux présenteront à la fois une réflexion et une réfraction. Non-métaux

Les matériaux métalliques ont seulement une réflexion. Toute la lumière réfractée est absorbée. Les métaux

Il serait extrêmement coûteux d’essayer de modéliser l’interaction de la particule lumineuse avec les molécules du matériau. Nous faisons plutôt des hypothèses et des simplifications.

Simplifier la réfraction

Si la taille des pixels ou la zone d'ombrage est grande par rapport aux distances entrée-sortie, nous pouvons supposer que les distances sont effectivement nulles. Pour plus de commodité, nous divisons les interactions lumineuses en deux termes différents. Nous appelons le terme de réflexion de surface "spéculaire" et le terme résultant de la réfraction, de l'absorption, de la diffusion et de la re-réfraction est appelé "diffus". Séparation en diffuse et spéculaire

Cependant, cette hypothèse est assez large. Pour la plupart des matériaux opaques, cette hypothèse est acceptable et ne diffère pas trop de la vie réelle. Cependant, pour les matériaux peu importe la transparence, l'hypothèse échoue. Par exemple, lait, peau, savon, etc.

La couleur observée d'un matériau est la lumière qui n'est pas absorbée. Il s’agit d’une combinaison de la lumière réfléchie et de toute lumière réfractée sortant du matériau. Par exemple, un matériau vert pur absorbera toute la lumière qui n’est pas verte. La seule lumière à atteindre nos yeux est donc la lumière verte.

C'est pourquoi un artiste modélise la couleur d'un matériau en nous donnant la fonction d'atténuation du matériau, c'est-à-dire comment la lumière sera absorbée par le matériau. Dans notre modèle simplifié diffus / spéculaire, cela peut être représenté par deux couleurs, la couleur diffuse et la couleur spéculaire. Avant que des matériaux à base physique ne soient utilisés, l'artiste choisissait arbitrairement chacune de ces couleurs. Cependant, il devrait sembler évident que ces deux couleurs doivent être liées. C’est là que la couleur albédo entre en jeu. Par exemple, dans UE4, ils calculent la couleur diffuse et spéculaire comme suit:

DiffuseColor = AlbedoColor - AlbedoColor * Metallic;
SpecColor = lerp(0.08 * Specular.xxx, AlbedoColor, Metallic)

où Métallisé est 0 pour les non-métaux et 1 pour les métaux. Le paramètre 'Spéculaire' contrôle la spécularité d'un objet (mais c'est généralement une constante 0.5 pour 99% des matériaux)

RichieSams
la source
1
Pourquoi le rayon incident est-il divisé après réflexion / réfraction? Si la lumière est une particule, cela signifie-t-il que cette particule se sépare de manière récursive? Et si la lumière est une onde, est-ce que cela signifie qu’il se divise par fréquence (mais dans ce cas, pourquoi se divise-t-il après la deuxième / troisième / etc. frappe)?
nikitablack
5
La particule ne se divise pas. Les images montrent plutôt les chemins potentiels que cela pourrait prendre.
RichieSams
2
Beaucoup de particules atteindront le (presque) même endroit sous le même angle. Pour chaque particule sortant, il y a (généralement) une particule qui est entrée. Cela signifie que la moyenne du faisceau de particules d'un certain angle sur un certain point se scinde en plusieurs réflexions (beaucoup).
Monstre à cliquet
1
Excellente réponse éclairant la plupart de mes questions. Pourquoi la partie spéculaire des non-métaux est-elle incolore et non affectée par l'albédo? Comment et où la polarisation entre-t-elle en jeu?
David Kuri
1
"La couleur observée d'un matériau est la lumière qui n'est pas absorbée." À ce stade, il pourrait être utile de se reporter à la section Existe-t-il des supports courants qui ne sont pas bien représentés par RVB? discussion, comme les matériaux fluorescents viennent à l'esprit.
Simon F
23

Je me demandais exactement à ce sujet il y a quelques jours. Ne trouvant pas de ressources dans la communauté graphique, je me suis rendu au département de physique de mon université pour lui demander .

Il se trouve qu'il y a beaucoup de mensonges auxquels nous croyons les graphistes.


Tout d'abord, lorsque la lumière frappe une surface, les équations de Fresnel s'appliquent. Les proportions de lumière réfléchie / réfractée en dépendent. Vous avez probablement su ceci.

Il n'y a pas de "couleur spéculaire"

Ce que vous ignorez peut-être, c'est que les équations de Fresnel varient en fonction de la longueur d'onde, car l' indice de réfraction varie en fonction de la longueur d'onde. La variation est relativement faible pour les diélectriques (dispersion, n'importe qui?), Mais peut être énorme pour les métaux (je suppose que cela a à voir avec les différentes structures électriques de ces matériaux).

Par conséquent, le terme de réflexion de Fresnel varie en fonction de la longueur d'onde et différentes longueurs d'onde sont donc réfléchies de manière préférentielle . Vu sous un éclairage à large spectre, c'est ce qui conduit à une couleur spéculaire. Mais en particulier, il n’ya pas d’absorption qui se produise comme par magie à la surface (les autres couleurs sont simplement réfractées).

Il n'y a pas de "réflexion diffuse"

Comme Naty Hoffman l’a dit dans l’exposé lié dans l’autre réponse, il s’agit en réalité d’une approximation de la diffusion souterraine plus dispersée.

Les métaux transmettent la lumière

Naty Hoffman a tort (plus précisément, en simplifiant). La lumière n'est pas absorbée immédiatement par les métaux. En fait, il passera assez facilement à travers des matériaux de plusieurs nanomètres d'épaisseur. (Par exemple, pour l'or, il faut 11,6633 nm pour atténuer de moitié la lumière (jaune) de 587,6 nm.)

L'absorption, comme dans les diélectriques, est due à la loi de Beer-Lambert. Pour les métaux, le coefficient d'absorption est juste beaucoup plus grand (α = 4πκ / λ, où κ est la composante imaginaire de l'indice de réfraction (pour les métaux d'environ 0,5% et plus) et λ est donné en mètres ).

Cette transmission (ou plus exactement le SSS qu'elle produit) est en réalité responsable d'une partie importante des couleurs des métaux (bien qu'il soit vrai que l'apparence des métaux est dominée par leur couleur spéculaire).

imallett
la source
3
Merci! Je ne connaissais que les simplifications. Ces détails supplémentaires sont géniaux
RichieSams le
1
C'est une réponse fascinante. Pourriez-vous clarifier / lier l'acronyme SSS s'il vous plaît?
Trichoplax
@ trichoplax Merci! SSS == diffusion sous la surface.
imallett
Merci :) Si vous clarifiez cela dans la question, il survivra à la suppression des commentaires (dont la longévité n'est pas garantie). J'ai édité un lien et un texte flottant qui, espérons-le, laisse intacte la présentation que vous souhaitez.
Trichoplax
2
Bien que j'apprécie le pédantisme de cette réponse. La diffusion sous la surface est considérée comme un effet à l’échelle en mm, alors qu’en réalité, aux plages moléculaires, tout passe à la surface dans une certaine mesure. Mais la contrainte de base est que nous comptons généralement les effets à l’échelle mm et essayons d’abstraire des niveaux inférieurs en tant que modèles statistiques. Par conséquent, le micromètre est égal à immédiatement car la plupart des pixels voient une surface beaucoup plus grande que celle-ci. Il en va de même pour les couleurs qui n'existent pas de manière significative en physique de la même manière que nos yeux et notre cerveau le préviennent
joojaa