Google+
3DVF Network :
ico_magazine
Magazine
ico_boutique
Boutique
ico_cgjobs
Portail Emploi
ico_upload
Hébergement d'image
ico_progiss
Progiss
Login
space
space

Accueil / Magazine / Articles / Dossiers / L'Histoire du Rendu 3D

space

L'Histoire du Rendu 3D

Publié le 11 février 2009 par lieo
space


 

Vers le Photoréalisme et au-delà, partie 2


Avec un premier volet sur l’Histoire du Rendu 3D, nous avons voulu donner un aperçu de l’industrie du rendu afin de mieux comprendre l’origine des technologies actuelles. Ce second volet, intitulé “Vers le Photoréalisme et au-delà”, nous emmène encore plus loin, au coeur des technologies de rendu aujourd’hui, ce qu’elles proposent et ce qu’elles nous réservent dans les années à venir.

Depuis les années 60, le but était d’obtenir des rendus comparables à des photographies, une sorte de “Graal” de la 3D. Au cours des années, on a dû surmonter bien des difficultés pour atteindre le photoréalisme, ce qui nous conduit à l’une des solutions les plus prisées d’aujourd’hui : l’Illumination Globale (Global Illumination, ou GI). La GI regroupe toutes les techniques de simulation de lumière dispersée dans un environnement artificiel.



La Recherche de l’Illumination Globale :
A vrai dire, la GI n’est pas un algorithme, mais un effet produit par plusieurs algorithmes. Le premier algorithme conçu pour traiter ce problème fut le Ray Tracing (lancé de rayon). Oui, vous avez bien lu, le ray tracing fut initialement conçu comme méthode pour calculer la GI. La toute première mise en oeuvre fut exécutée par IBM, en particulier un chercheur, qui publia un papier intitulé «Some Techniques for Shading Machine Renderings of Solids ». Tout ceci se passait en 1968 et aucun ordinateur de l’époque n’était capable d’utiliser pratiquement cet algorithme.

Cela n’était pas envisageable avant 1980, où Turner Whitted publia un article édifiant intitulé « An Improved Illumination Model for Shaded Display ». L’article de Whitted décrivait un algorithme de ray tracing prévu pour rendre des ombres, des réflexions et des réfractions .La méthode de Whitted était tellement simple qu’elle pouvait être décrite en seulement trois fonctions comprenant à peine une douzaine de lignes de prétendu code. C’est la raison pour laquelle la plupart des solutions de rendu du commerce sont basées sur les recherches de Turner Whitted.


Le Ray Tracing :
Le ray tracing fonctionne en lançant un rayon depuis le viseur de la caméra dans la scène ; soit il quitte la scène, soit il atteint un autre objet . Si un rayon rencontre un objet, il envoie alors un rayon secondaire dans la direction de la normale de la surface jusqu’à ce qu’il atteigne à nouveau une nouvelle surface, auquel cas l’objet est dans l’ombre, ou bien jusqu’à ce qu’il atteigne la lumière. Si la surface est transparente, le rayon est transmis à travers l’objet dans une direction déterminée en partie par l’indice de réfraction de cet objet.


Malgré tous les avantages du ray tracing, cette méthode est loin d’être impeccable. Le problème souvent rencontré avec le ray tracing, et dans l’infographie en général, c’est le crénelage (aliasing). Cela est dû au fait que le ray tracing échantillonne une scène à intervalles espacés réguliers et ignore tout ce qui se trouve entre ces intervalles.

L’Echantillonnage Stochastique :
Robert L.Cook, qui a contribué à la création du très populaire Renderman Standard, a cherché à résoudre ce problème et a publié ses résultats dans un article de 1986 intitulé « Stochastic Sampling in Computer Graphics ». La méthode d’échantillonnage stochastique de Cook fonctionne en échantillonnant de façon aléatoire les zones entre les pixels. Avec cette méthode, l’effet extrêmement discordant du crénelage est réduit à un bruit aisément toléré par l’oeil humain.

Ce bruit, outre le fait qu’il peut remplacer le crénelage, peut aussi être utilisé avec succès pour simuler de nombreux phénomènes « fuzzy ». Par exemple, l’échantillonnage stochastique peut être utilisé pour simuler avec précision une réflexion floue en appliquant une perturbation sur les rayons secondaires.


Beaucoup de moteurs de rendu basés sur le scan-line, comme le PRMan de Pixar, ont entièrement tiré parti des travaux de Cook. L’échantillonnage stochastique peut être utilisé pour traiter ces phénomènes où le moteur de rendu calcule ce qu’on appelle le « cercle de confusion », et donc perturber les rayons appropriés qui se rapportent au cercle afin de créer un effet de flou. L’échantillonnage stochastique traite aussi le motion blur d’une manière très intuitive, où non seulement les rayons sont distribués sur une seule frame, mais aussi à travers le temps. 

Malgré l’addition d’un nouveau répertoire tout entier d’effets, l’échantillonnage stochastique n’arrange pas les plus gros inconvénients en solution pour la GI. Le ray tracing résout en partie le problème, dans le sens où il simule seulement l’illumination directe. Une méthode pour simuler les réflexions diffuses était nécessaire pour compléter la GI, à savoir la radiosité.



La Radiosité :
Avec leur article de 1984 « Modeling the Interaction of Light Between Diffuse Surfaces », Cindy M. Goral, Kenneth E. Torrance, Donald P. Greenberg et Bennett Battaile présentèrent le second algorithme de la décennie qui révolutionna le monde de l’infographie. La radiosité gère la scène en fractionnant les faces en une série de sous-éléments. Elle utilise alors des équations linéaires pour calculer comment l’illumination se déplace depuis une source de lumière et à travers ces sous-éléments. Cependant la radiosité, comme le ray tracing, ne résolvait qu’une partie de l’équation de la GI, et ne prenait pas en compte les effets tels que les réflexions et les transmissions spéculaires.




Puisque le ray tracing avait réussi à gérer ces effets avec succès, l’étape suivante la plus logique pour les chercheurs était de combiner les deux algorithmes et d’y reporter ainsi tous les avantages de l’échantillonnage stochastique. Le résultat final donnait une méthode vraiment solide pour la création de scènes photoréalistes. Certaines solutions de rendu du commerce, comme Lightwave 3D, utilisent encore cet hybride.


La radiosité n’est cependant pas dépourvue d’inconvénients. Le simple fait qu’elle doive subdiviser la scène en sous-éléments exige d’énormes ressources du système. Le couple radiosité/faces crée de même d’autres problèmes, par exemple, des artefact visibles, le calcul de changements brusques dans l’illumination et d’ombres trop vagues.



Le Photon Mapping :
Au milieu des années 90, un chercheur du nom de Henrik Wann Jensen créa une parade à ces inconvénients. Durant ses études en PhD en 1994, à l’Université Technique du Danemark, Jensen inventa l’algorithme connu sous le nom de photon mapping. Ses résultats furent officiellement publiés en 1996 dans son article « Global Illumination Using Photon Maps ».



L’algorithme de Jensen se déroule en deux passes. La première émettrait un nombre défini par l’utilisateur de photons dans la scène. Ceux-ci rebondiraient pendant une durée déterminée, ou quitteraient complètement la scène. Au fur et à mesure, chaque rebond du photon perd en intensité, et prend au passage les couleurs d’autres surfaces. Ces rebonds seraient ensuite mémorisés dans une structure de données appelée le photon map.

 

 

La seconde passe samplerait basiquement chaque pixel de la scène, comme un ray tracer, et calculerait combien chaque percussion du photon contribuerait à la couleur et à l’illumination de ce pixel. Une fois de plus, tous les avantages du ray tracing pouvaient être mis en oeuvre, comme l’échantillonnage stochastique.

En éliminant virtuellement chaque inconvénient de l’utilisation d’une radiosité hybride et d’une solution de ray tracing, le photon mapping apporte quelques surprises bienvenues en plus. En raison de la nature des particules du photon mapping, celui-ci devient une méthode extrêmement compétente pour la simulation de nouveaux effets excitants. Ceux-ci incluent les caustiques, où les photons sont concentrés dans un volume et sont retransmis au travers, et le sub surface scattering qui prend en compte l’exacte modélisation de surfaces translucides, comme la cire de bougie, la peau humaine etc.




Le faire en Temps Réel :
Ces dernières années, l’industrie du jeu vidéo a été l’un des principaux moteurs de la technologie informatique. La conception multimédia et les simulations scientifiques occupent une partie relativement modérée du marché comparé au jeu vidéo, mais cela ne signifie pas qu’ils ne bénéficient pas de ces avancées .  

Les deux acteurs de cette relation sont indirectement interdépendants, étant donné que les avancées des techniques graphiques s’immiscent dans le réseau de production du jeu. Récemment, les techniques comme la radiosité et le photon mapping ont été utilisées pour augmenter le photoréalisme des environnements de jeux vidéos. 

Il y a quelques années, le matériel destiné au graphisme a tout particulièrement excellé dans l'affichage des polygones et leurs textures. Les quelques dernières innovations de Nvidia et ATI ont apporté quelque chose de complètement différent sur le marché ; il est désormais possible d’exécuter des shaders personnalisés avec du matériel graphique.

La prochaine étape dans l’entrée des algorithmes de GI dans le royaume de l’interaction temps réel était d’exécuter le photon map de Jensen. Malgré le caractère vraiment stupéfiant de ces avancées, les utilisateurs invétérés devront attendre encore quelques années avant de jouer avec une version photon map de Quake en temps réel.



Sauver des Faces :
L’une des exigences pour obtenir un photoréalisme vraisemblant dans une scène est l’apparition de tous les objets à l’intérieur d’une scène, exerçant une influence les uns sur les autres. Les réflexions, les réfractions ainsi que les ombres peuvent être simulées facilement et de manière convaincante, même en temps réel, bien que les réflexions diffuses présentent un problème. Une nouvelle technique appelée based lighting tente d’y remédier. Au lieu d’utiliser beaucoup de calculs douteux, l’image based lighting essaye de mémoriser l’information de l’éclairage dans un fichier image. Cette image haute précision n’enregistre pas seulement l’information de la couleur à chaque pixel, mais aussi une valeur de radiance. Celle-ci est ensuite utilisée pour tester comment chaque pixel contribue à la diffusion de la lumière d’une scène.

 

Bilan :
Même si le photon mapping est aujourd’hui le dernier cri en infographie en matière d’algorithmes de rendu, il y a toujours certains phénomènes qu’il ne prend pas en compte. Ceux-ci, tels que la diffraction, l’interférence et la polarisation ne peuvent pas être simulés de façon précise. C’est pourquoi les chercheurs sont toujours dévoués à trouver de nouvelles manières excitantes et efficaces de représenter des scènes 3D sur des écrans 2D.

 


 

 

Lectures Recommandées :
Henrik Wann Jensen's website
An Introduction to Ray Tracing - Andrew S. Glassner
Radiosity and Global Illumination - Francois X. Sillion, Claude Puech
Realistic Image Synthesis Using Photon Mapping - Henrik Wann Jensen

 

 

Ressources citées :
[1] Glassner, Andrew S. An Introduction to Ray Tracing. MORGAN
KAUFMANN. 1989.
[2] Jesen, Henrik Wann. Realistic Image Synthesis Using Photon
Mapping. A K Peters. 2001
[3] Buck, Ian; Hanrahan, Pat; Mark, William R. Purcell, Timothy J;
Ray Tracing on Programmable Graphics Hardware. 2001
[4] Cammarano, Mike; Donner, Craig; Hanrahan, Pat; Jensen,
Henrik Wann; Purcell, Timothy J; Photon Mapping on Programmable
Graphics Hardware. 2003

 

 

All images, unless otherwise stated by Henrik Wann Jensen.



Liens : 
3DVF
CGNetwork
Discuter de cette article sur CGTalk

space
space

Les derniers commentaires (0)

Soyez le premier à déposer un commentaire.
space
space
space
space
space
A Propos | Contact | Publicité
Copyright © 2000-2018 3DVF. Tous droits réservés. | Infogérance serveur | tracker
space