| Q&A |
Philippe
Biarnaix
GPUTECH Software, XRadiance
15/09/04 |
| |
 |
| La
passe d’illumination indirecte dans une Cornell
box environ 2 Min de calcul avec 1680 KPhotons et
512 Photon/Pixel |
Cette
image est identique a la précédente
avec les deux passes superposées, chaque
passe lance 1680 KPhotons, 32 Photons/Pixel pour
l’illumination directe et 512 pour la passe
indirecte, le temps de calcul est d’environ
2 Min 30. |
|
|
| Q1 |
Brève
présentation de XRadiance. |
| A1 |
XRadiance
est un photon tracer natif, utilisant le GPU de la carte graphique
comme processeur de calcul. L’ensemble de l’algorithme
a été implémenté sur le GPU, ce
qui permet en utilisant la parallélisation du pipeline
programmable, d’obtenir des temps de calcul bien plus
faibles que les logiciels utilisant le CPU. XRadiance utilise
la méthode du photon mapping présentée
par Jensen en 1996. Cette méthode a pour but de distribuer
des photons dans une scène pour calculer l'illumination
globale. L'illumination globale peut être divisée
en deux parties : l'illumination directe (celle reçue
directement d'une source lumineuse) et l'illumination indirecte
(celle s'étant réfléchie sur une surface
au moins avant). Il est donc possible de simuler le comportement
physique de la lumière de façon très réaliste,
ainsi les ombrages calculés sont naturellement doux et
atténués, l'illumination indirecte ré-éclaire
la scène, les objets réfléchissants où
réfractants génèrent les caustics. Les
deux images ci-dessous illustrent avec un exemple simple la
méthode.
L’interface temps réel permet par ailleurs le réglage
des paramètres de la scène, et offre ainsi une
grande souplesse de manipulation.
|
| |
|
| Q2 |
Quelles
sont les caractéristiques d'XRadiance en matière
de rendu ? |
| A2 |
La
version actuelle d’XRadiance permet le rendu de scènes
avec des matériaux complexes: Diffuse Mapping, Bump Mapping,
Specular Mapping, réflexion, transparence, réfraction.
Il est possible d’utiliser des sources de type ponctuelle
où spot, sans limite de nombre.
Le photon tracing est entièrement paramétrable
(nombre de photons émis, rayon de recherche, nombre de
photon recherché, filtrage gaussien, passe calculée
directe où indirecte).
Calcul des réflexions avec photon mapping, des réfractions
avec photon mapping et caustics.
Il est en outre possible d’ajouter un background sous
forme d’un cube mapping.
De nombreux effets spéciaux sont disponibles, comme la
profondeur de champ, brouillard, Lens flare, Halo sur les lumières,
cône de lumière pour les spots.
La plupart des formats d’image peuvent être calculés,
et les images antialiasées. |
| |
|
| Q3 |
Quelle
est la différence entre XRadiance et des solutions telles
que Gelato de nVidia ? |
| A3 |
Gelato
est un logiciel hybride, exploitant les possibilités
de rendu du rasterizer de la carte en utilisant le pipeline
pour les calculs d’éclairement, les ombres, réflexions
et réfractions sont calculées en Ray-tracing
a priori hors GPU. Je ne possède aucune information
concernant l’illumination globale, cependant les performances
sont très dépendantes du type d’algorithme
utilisé.
XRadiance utilise uniquement les possibilités de la
carte en calcul flottant, et réalise tous les calculs
sur le GPU.
|
| |
|
| Q4 |
Quels
sont les gains de vitesse apportés par les nouvelles
cartes graphiques ? |
| A4 |
Les
gains en vitesse de calcul par rapport à un calcul
sur CPU sont de l’ordre de 5 à 20, suivant le
type de CPU et le type de carte graphique. XRadiance bénéficie
complètement des évolutions sur les nouvelles
cartes graphiques apparues cette année (6800 NVIDIA,
X800 ATI), étant donné que le nombre de canaux
du pipeline est passé de 8 à 16 sur ces deux
types de carte, et que la fréquence des chips ainsi
que des mémoire est grandement accrue, nous estimons
le gain à 2, par rapport aux équivalents de
la génération précédente (5900
NVidia et Radeon 9800 ATI). |
| |
|
| Q5 |
XRadiance
est il compatible avec les cartes ATI, exploite t-il les cartes
anciennes (type GeForce 3) ? |
| A5 |
XRadiance
est compatible avec les cartes graphiques possédant
un pipeline de rendu programmable utilisant les pixel shader
version 2.0 et ultérieure 2.x et 3.0.
Il est donc compatible avec les cartes graphiques ATI de type
RADEON 9700, 9800, X800, malgré le manque de précision
en calcul flottant (précision 24 bits).
Il est également compatible avec les cartes graphiques
NVIDIA de type 5800, 5900, 6800. Les anciennes cartes utilisant
les pixel shader 1.1 où 1.4, ne sont malheureusement
pas compatibles.
|
| |
|
| Q6 |
Comment
XRadiance s'intègre dans un environnement de travail
basé sur 3DS Max ou Maya ? |
| A6 |
XRadiance
est fourni aujourd’hui avec un exporter 3DS Max en plugin,
qui permet d’exporter les scènes dans notre format
de fichier, une version permettant d’exporter les animations
est en cours de finalisation. Nous devrions pouvoir proposer
l’exportation MAYA par le même biais, avant la fin
de ce mois. |
| |
|
| Q7 |
Est-il
possible de partager le rendu sur plusieurs stations ? Est-ce
que la solution est compatible SLI ? |
| A7 |
Nous
ne disposons pas encore de version utilisable en réseau.
Etant donné le mode de calcul utilisé, il ne devrait
y avoir aucun problème de compatibilité avec le
système SLI de NVIDIA. |
| |
|
| Q8 |
Quels
sont les caractéristiques de XRadiance en matière
d'antialiasing ? |
| A8 |
L’antialiasing
de l’image est paramétrable, un niveau de sampling
peut être défini de 4 sample/pixel à 16
sample/pixel. |
| |
|
| |
|
| |
|
| |
|