L'hypothèse sous-jacente à ce modèle est la même que celle de nombreux autres modèles de rendu de peau; la diffusion souterraine peut être approchée comme un phénomène de diffusion. C'est bien car dans les milieux très diffusants, la distribution de la lumière perd sa dépendance de l'angle et tend à l'isotropie.
L'approximation dipolaire est une formulation pour la résolution d'un tel problème de diffusion d'une manière analytique.
Fondamentalement, ils commencent par approximer le BSSRDF en tant que composant de diffusion multiple et de diffusion unique. La diffusion multiple est alors définie comme:
Où sont des termes de Fresnel et est le profil de diffusion exprimé en fonction de la distance entre le point d'entrée et le point de sortie. FtR
Ce est appelé profil de diffusion et ils formulent ce profil via une approximation dipolaire. La contribution du rayon lumineux entrant est considérée comme l'une des deux sources virtuelles: une négative sous la surface et une positive au-dessus (c'est pourquoi le dipôle)R
Ici dans l'image r est leau dessus. La contribution de ces sources de lumière dépend de divers facteurs tels que la distance de la lumière à la surface, le coefficient de diffusion, etc. (voir ci-dessous pour une description plus détaillée de la formule elle-même).∥ xje- xo∥
Ce modèle ne prend en compte que plusieurs événements de diffusion, mais c'est assez bien pour la peau. Il faut cependant noter que pour certains matériaux translucides (par exemple la fumée et le marbre) la diffusion unique est fondamentale. Cet article propose une formulation de diffusion unique, mais est coûteux.
Le profil de diffusion est généralement approximé pour une application en temps réel sous la forme d'une série de flous gaussiens (comme dans les travaux fondateurs de D'Eon et al. Dans GPU Gems 3 puis utilisés pour le SSSSS de Jimenez) afin de le rendre pratique pour des scénarios en temps réel . Dans ce merveilleux article, il y a des détails sur une telle approximation. Une image de cet article montre à quel point cette formulation est bonne:
Comme note latérale, l'approximation dipolaire suppose que le matériau est semi-infini, mais cette hypothèse ne tient pas avec les dalles minces et les matériaux multicouches tels que la peau. S'appuyant sur les travaux dipolaires, Donner et Jensen [2005] ont proposé l'approximation multipolaire qui tient compte des problèmes dipolaires. Avec ce modèle au lieu d'un seul dipôle, les auteurs en utilisent un ensemble pour décrire le phénomène de diffusion. Dans une telle formulation, les profils de réflectance et de transmittance peuvent être obtenus en résumant la contribution des différents dipôles impliqués
EDIT: Je mets ici les réponses à quelques questions de @NathanReed dans la section des commentaires:
Même avec l'approximation du profil de diffusion, le modèle BSSRDF nécessite toujours l'intégration sur un rayon de points proches sur la surface pour recueillir la lumière entrante, n'est-ce pas? Comment cela se fait-il, disons, dans un traceur de chemin? Devez-vous créer une structure de données pour pouvoir échantillonner des points sur la surface à proximité d'un point donné?
Oui, l'approximation BSSRDF doit encore être intégrée sur une certaine zone.
Dans l'article lié, ils ont utilisé un traceur de rayons Montecarlo échantillonnant au hasard autour d'un point avec une densité définie comme:
σt re- σt rré
Lorsque cette valeur sigma est le coefficient d'extinction effectif défini ci-dessous (il dépend du coefficient de diffusion et d'absorption, qui sont les propriétés du matériau) et d est la distance jusqu'au point que nous évaluons. Cette densité est ainsi définie car le terme de diffusion a une chute exponentielle.
Dans [Jensen et Buhler 2002], ils ont proposé une technique d'accélération. L'un des principaux concepts était de dissocier l'échantillonnage de l'évaluation du terme de diffusion. De cette façon, ils effectuent une évaluation hiérarchique des informations calculées pendant la phase d'échantillonnage pour regrouper des échantillons distants lorsqu'il s'agit d'évaluer la diffusion. L'implémentation décrite dans l'article utilise un octree comme structure. Cette technique, selon l'article, est d'un ordre de grandeur plus rapide que l'intégration complète de Monte Carlo.
Malheureusement, je ne me suis jamais lancé dans une implémentation hors ligne, donc je ne peux pas aider plus que cela.
Dans les approximations de la somme des Gaussiennes en temps réel, le rayon correct est implicitement défini lors de la définition de la variance des flous gaussiens qui doivent être appliqués.
Pourquoi une lumière positive et une négative? Leur objectif est-il de s'annuler d'une manière ou d'une autre?
Oui, la méthode de la source dipolaire (qui date bien avant l'article de Jensen) est définie de manière à satisfaire une condition aux limites. Plus précisément, la fluence doit être nulle à une certaine limite extrapolée qui a une distance de la surface de où2 A D
Étant la réflectivité de Fresnel de la dalle considérée et cette valeur sigma est le coefficient d'extinction réduit décrit ci-dessous.Frér
EDIT2: J'ai développé (un tout petit peu) certains des concepts de cette réponse dans un article de blog: http://bit.ly/1Q82rqT
Pour ceux qui ne sont pas effrayés par beaucoup de lettres grecques dans une formule, voici un extrait de ma thèse où le profil de réflectance est brièvement décrit dans chaque terme: