vers l'index général de l'aide
vers l'index des matériaux
Le finish contrôle l'aspect de "finition" d'une surface, et sa façon de réagir à la lumière. Cette surface peut ainsi être matte, brillante, réfléchissante,...
POV-Ray 2.2+sup.
POV-Ray 3.0+sup. (irid)
MegaPOV (blinn, améliorations réflexion)
Avant POV-Ray 3.1, finish comprenait le paramètre ior, pour contrôler la réfraction, mais ior appartient désormais à interior, et son emploi dans finish est vivement déconseillé.
finish { //réactions à la lumière ambient Vecteur diffuse Decimal brilliance Decimal //spéculaires phong Decimal phong_size Decimal specular Decimal roughness Decimal metallic Booleen //réflexion reflection Vecteur //effets spéciaux crand Decimale irid {Decimale thickness Decimale turbulence Vecteur} }
Nouveau dans MegaPOV :
finish { //spéculaires blinn Decimal facets Decimal //réflexion reflection_type (1 ou 0) reflection_min Vecteur reflection_max Vecteur reflection_metallic Booleen reflection_falloff Decimal reflection_blur Decimal reflection_samples Entier conserve_energy Booleen }
Dans POV-Ray, les parties d'un objet qui ne sont pas directement éclairées par une source lumineuse devraient, en principe, être totalement obscures. Afin d'éviter à ces zones non éclairées d'être totalement noires et indifférenciées, POV-Ray permet de spécifier un niveau d'éclairage minimum, qui sera appliqué aux surfaces qui ne reçoivent pas de lumière.
ambient détermine ce niveau d'éclairage minimum. Sa
par défaut est de 0.1, ce qui représente une luminosité relativement faible.
La luminosité résultante dans le rendu dépend de la formule suivante :
lumière_ambiante = ambient_du_finish_de_l'objet * paramètre_global_ambient_light
Pour plus de détails sur ambient_light, voyez dans la section paramètres globaux
La valeur donnée à ambient étant en fait un vecteur de couleur (où filter et transmit sont ignorés), on peut l'utiliser pour colorer les zones d'ombres d'une façon particulière, et ainsi donner une certaine atmosphère à la scène.
diffuse contrôle la proportion entre la quantité de lumière reçue directement par l'objet et ce qui sera "renvoyé" vers la caméra. La valeur par défaut est de 0.6, ce qui signifie que 60% de la lumière qui frappe l'objet sera "renvoyée" vers la caméra (et que 40% de la lumière est absorbée par l'objet !).
Les valeurs par défaut sont souvent de bonnes valeurs. Généralement, ambient varie entre 0.1 et 0.2 tandis que diffuse varie entre 0.5 et 0.7. Mais il y a des exceptions. Pour un objet en verre, de faibles valeurs d'ambient et diffuse sont souvent meilleures, puisque le verre est un matériau qui prend l'essentiel de son aspect en fonction de son environnement.
Selon qu'un point d'une surface forme un angle plus ou moins prononcé avec la caméra et une source lumineuse, l'intensité d'éclairage de ce point sera différente. Plus cet angle sera faible (plus la caméra et la lumière seront "face à" la surface), plus l'éclairage du point sera intense. Cet angle est appelé "angle d'incidence".
brilliance contrôle la "rapidité" du dégradé de la lumière sur une surface en fonction de l'angle d'incidence. Plus sa valeur est basse, plus le dégradé est court et brutal. Plus sa valeur est élevée, plus le passage de l'éclairage minimal à l'éclairage maximal est progressif (valeur par défaut : 1.0). On peut se servir d'une valeur basse pour éliminer les nuances de tons et donner un côté "cartoon" (dessin en aplats) à une image.
Si vous regardez une balle en plastique, vous constaterez que, sur sa surface, apparaissent des petites zones très lumineuses, selon les sources de lumière environnantes. Selon que la surface est plus ou moins lisse, les points lumineux seront plus ou moins petits. Cet effet est dû à un phénomène de réflexion (plus ou moins) floue, régie par les reliefs microscopiques présents à la surface de l'objet.
En imagerie 3D, depuis longtemps, afin de réduire la "platitude" des surfaces et leur donner un peu de "peps", on utilise des systèmes de lissage apparent, qui simulent ce phénomène sans pour autant effectuer de vrais calculs de réflexion floue. Le terme générique employé pour ces techniques est "spéculaires".
Le plus connu de ces procédés est le phong, du nom de son inventeur ... . La valeur qui suit le mot clé règle l'intensité (la saturation) de la tache lumineuse, en fonction de la couleur de la lumière qui frappe ce point. Une valeur de 1 donnera un point lumineux dont la couleur est égale à 100% de celle de la source.
Le mot clé supplémentaire phong_size détermine l'étendue de la tache lumineuse. La valeur par défaut est de 40. Si on l'augmente, le point rétrécit, devient plus "serré", comme si l'objet était mieux poli. Si on la diminue, le point s'élargit, comme si on avait poncé l'objet.
specular est un autre type de spéculaire, théoriquement plus réaliste que phong. La valeur qui le suit à le même rôle qu'avec phong.
Au niveau du résultat, on peut dire que, si phong donne un aspect verni aux objets, specular donne plutôt un aspect de vernis satiné (moins "mordant"). On peut, en outre, utiliser les deux paramètres simultanément. Par exemple, un phong bien serré combiné à un specular un peu plus large et discret donnent de très beaux résultats sur une texture de bois.
Le mot clé roughness joue le même rôle que phong_size. Sa valeur par défaut est de 0.05, la taille du point lumineux diminuant si on diminue la valeur (et vice versa).
Le mot clé metallic, lorsqu'il est activé (metallic ou metallic on), fait en sorte que la couleur d'un spéculaire ne soit plus dépendante de la couleur de la source lumineuse, mais soit dépendante de la couleur de l'objet à l'endroit du point lumineux.
Il s'agit d'un nouveau modèle de spéculaire, dit "à microfacettes", plus perfectionné que phong et specular. Se basant sur l'équation de réflectivité de Fresnel, il nécessite qu'un ior soit spécifié.
blinn est suivi d'une valeur de saturation, qui a le même effet que pour les autres spéculaires. En outre, il faut spécifier le mot clé facets, suivi d'une valeur qui représente la pente moyenne des microfacettes. Une valeur faible donnera une petite tache lumineuse, tandis qu'une valeur plus élevée donnera une tache plus étendue.
crand permet de donner à une surface un aspect rugueux, granuleux, un peu comme du sable ou du béton brut. Cet effet est obtenu au moment du rendu, en variant au hasard la luminosité des pixels, dans la limite fixée par la valeur de crand (valeur par défaut : 0).
Attention : crand est une des rares propriétés tout à fait aléatoires de POV-Ray. Cela signifie que, d'un rendu à l'autre, la texture aura un aspect légèrement différent, ce qui peut être particulièrement ennuyeux pour une animation. De plus, puisque tout se passe au niveau des pixels du rendu, l'effet varie selon la résolution de l'image finale. On évitera donc crand, et on lui substituera le plus souvent, par exemple, un normal {bumps ...} bien serré !
Le mot clé irid permet de simuler les nuances irisées (couleurs d'arc-en-ciel) qui apparaissent sur les bulles de savon, flaques de mazout,...
thickness ("épaisseur") fait varier la densité des bandes colorées, des valeurs plus faibles correspondant à un "film" iridescent plus fin, et donc parcouru de plus nombreuses bandes colorées.
turbulence, qui est indépendant du mot clé homonyme, donne le taux de turbulence appliqué à la surface, un peu comme si on soufflait plus ou moins fort sur la bulle de savon.
Il est conseillé d'aller jeter un coup d'oeil sur le paramètre global irid_wavelenght.
C'est tout simplement le contrôle de la réflectivité de la surface, comme un miroir. La valeur représente la quantité de reflet à ajouter à la couleur de l'objet. Si on donne à un objet bleu un finish {reflection 1}, la couleur d'un point de cet objet sera du bleu additionné de la couleur du reflet. Pour faire un miroir "parfait", il faudra donc utiliser un objet de couleur noire; ainsi, seul le reflet interviendra.
MegaPOV apporte de nombreux perfectionnements au système de réflexion.
Ce mot clé sélectionne un des deux modes de réflectivité.
reflection_type 0 est le mode par défaut, et concerne les matériaux
opaques (sans réfraction).
reflection_type 1 sélectionne le mode "Fresnel", où la réflectivité
est calculée en fonction de l'indice de réfraction (ior),
qu'il faudra donc spécifier dans interior.
Si vous regardez un sol carrelé en étant debout, il apparaîtra réfléchissant, mais pas beaucoup. Si maintenant vous vous abaissez, pour finir à quatre pattes, vous verrez que ce sol devient de plus en plus réfléchissant. Ce phénomène se produit avec tous les matériaux, particulièrement si ils sont relativement lisses.
Plus l'angle d'incidence (angle entre l'observateur et la surface qu'on regarde) est faible, plus cette surface apparaît réfléchissante.
Si reflection_type 0 est sélectionné, reflection_min est la quantité de reflet obtenu lorsque la surface est vue "de face", et reflection_max est la quantité de reflet obtenu lorsque la surface est vue "à ras".
Si reflection_type 1 est sélectionné, reflection_min est la quantité de reflet minimale (en fonction de l'ior), et reflection_max est la quantité de reflet maximale (toujours en fonction de l'ior).
conserve_energy (on/off) permet à POV-Ray d'ajuster automatiquement les valeurs de filter et transmit en un point d'une texture, en fonction de la quantité de réflection effective en ce point. Ainsi, un point très réfléchissant agira davantage comme si il était opaque, et le résultat sera plus réaliste.
Au même titre que metallic pour les spéculaires, ce mot clé fait en sorte que la couleur de l'objet détermine la teinte du reflet, ce qui est particulièrement bienvenu lorsque l'objet est multicolore.
Avec reflection_type 0 (dans le type 1, c'est automatique), permet de spécifier la vitesse à laquelle on passe de la réflectivité minimale à la réflectivité maximale. Il s'agit donc d'un exposant, 1 donnant un gradation linéaire, 2 une gradation au carré (parabolique), etc...
On peut toujours utiliser le mot clé habituel. Dans ce cas, reflection_type sera mis sur 0, reflection_min et reflection_max prendront la valeur spécifiée, et reflection_falloff vaudra 1.
Afin de simuler la réflexion floue observée sur certaines surfaces dotées de reliefs
microscopiques, il est possible de spécifier deux mots clés :
reflection_blur, suivi d'un nombre décimal, contrôle l'importance du flou. De faibles
valeurs donneront un flou léger, tandis que de grandes valeurs donneront un flou bien "étalé".
Le processus utilisé est similaire à celui de la profondeur de champ de la caméra : un système d'
échantillonnage, qui prend des valeurs de pixels supplémentaires dans un certain rayon autour
du point recherché.
reflection_samples contrôle le nombre d'échantillons pris pour chaque point
de réflexion floue. Plus ce nombre est élevé, plus on se débarrasse du "grain" d'échantillonnage,
mais plus on augmente les temps de calcul.
auteurs : Fabian Brau / Fabien Mosen