PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… ·...

13
12/01/2010 1 27 Prendre en compte toutes les inter- réflexions 28 Lancer de rayon Sculpture de John Ferren Photo Radiosité Hypothèse : matériaux diffus Radiance, BRDF… indépendantes de la direction Simplification de l’équation de l’éclairage Méthode de radiosité : Discrétisation de cette équation en espace objet indépendamment du point de vue Résolution de l’équation discrétisée Génération finale des images en fonction du point de vue 29 Environnement échantillonné sous la forme de patchs discrets, de taille finie, émettant et réfléchissant la lumière uniformément sur leurs surface (choix d’une base) 30 Forme simplifiée : Discrétisation : 31 L(x,d) = E(x,d) + S r(x,d,d)v(x,x)cos(θ)dL(x,d’) B(x) = E(x) + S B(x’)v(x,x)cos(θ)cos(θ’)/dxB i = E i + r i j F ji B j A j /A i B i , B j sont les radiosités des patchs i et j (en W/m2) E i est le taux d’émission du patch i F ji est le facteur de forme qui caractérise la proportion d’énergie quittant le patch j qui arrive sur le patch i A i et A j sont les surfaces des patchs i et j En regroupant tous les éléments : Équation matricielle à résoudre itérativement pour chaque longueur d’onde traitée Méthodes de relaxations (gathering / shooting) 32 B 0 B n = E 0 E n B 0 B n + r i F ji B = E + MB

Transcript of PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… ·...

Page 1: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

1

27

Prendre en compte toutes les inter-réflexions

28

Lancer de rayon

Sculpture de John Ferren

Photo Radiosité

Hypothèse : matériaux diffus

Radiance, BRDF… indépendantes de la direction

Simplification de l’équation de l’éclairage

Méthode de radiosité : Discrétisation de cette équation en espace objet

indépendamment du point de vue

Résolution de l’équation discrétisée

Génération finale des images en fonction du point de vue

29

Environnement échantillonné sous la forme de patchs discrets, de taille finie, émettant et réfléchissant la lumière uniformément sur leurs surface (choix d’une base)

30

Forme simplifiée :

Discrétisation :

31

L(x,d) = E(x,d) + S r(x,d,d’)v(x,x’)cos(θ)dL(x,d’)

B(x) = E(x) + S B(x’)v(x,x’)cos(θ)cos(θ’)/r²dx’

Bi = Ei + ri j Fji Bj Aj/Ai

Bi, Bj sont les radiosités des patchs i et j (en W/m2) Ei est le taux d’émission du patch i Fji est le facteur de forme qui caractérise la proportion d’énergie quittant le patch j qui arrive sur le patch i Ai et Aj sont les surfaces des patchs i et j

En regroupant tous les éléments :

Équation matricielle à résoudre itérativement pour chaque longueur d’onde traitée Méthodes de relaxations (gathering / shooting)

32

B0

Bn

=

E0

En

B0

Bn

+ ri Fji B = E + MB

Page 2: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

2

Facteur de forme Fij d’une surface Ai vers une surface Aj :

Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode analytiqueSolutions approximées : projection sur une

hémisphère ou un hémicube.

33

Fij= AiAj

v(x,x’) dxdx’r²

cos(θ)cos(θ’)

Calcul de l’illumination selon le pipeline :

34

Résolution du système

Modélisation de la scène

Rendu et affichage

Calculs des Facteurs de forme

Résolution itérative du système :

35 36

Que faut-il recalculer quand quelque chose change dans la scène ? Géométrie

Matériaux

Point de vue

37

Résolution du système

Modélisation de la scène

Rendu et affichage

Calculs des Facteurs de forme

Modification de la scène

Modification des matériaux

Modification de la caméra

38

Page 3: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

3

Museum simulation. Cornell University. 50,000 patches.39

Calcul indépendant du point de vue

Adapté aux scènes complexes

Partionnement des échanges lumineux

Mise à jour interactive

40

Coût mémoire

Diffus pur « final gather » par Ray-Tracing

Maillage Maillage de discontinuité

Pré-calculs très longs Accélérations possibles : radiosité hiérarchique

41

Calcul à différents niveau hiérarchique

Regroupement

42

43 44

Page 4: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

4

45 46

47 48

Rendu Scan-line.(3DS MAX)

Rendu en radiosité etlancer de rayons.

49 50

Page 5: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

5

51 52

53

Méthode générique de calcul d'intégrales multi-dimensionnelles

Intégration = problèmes récurrent en graphique : Pixel : anti-aliasing Sources de lumière : ombres douces Lentille : profondeur de champ Temps : flou cinétique BRDF : réflections glossy Hémisphere : éclairage indirect

54

Intégrale d’une fonction quelconque

Problème continu discrétisation

55

Approximation par des trapèzes : méthode de Simpson

56

Page 6: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

6

Monte Carlo : échantillonnage aléatoire Inutile de mémoriser l’écart entre les n échantillions

Mais on espère qu’en moyenne il est de 1/n

57

Prenons un carré

Prenons un point aléatoire (x,y) dans ce carré

Testons s’il est dans le ¼ de disque (x2+y2 < 1)

La probabilité est de /4

x

y

C’est l’intégral de la fonction valant 1 dans le cercle et 0 en dehors

58

La probabilité est /4

Soit n = # points dedans / # points total

n * 4

L’erreur dépend du nombre d’essais

59

Pour calculer , Monte Carlo n’est pas très efficace

Mais la convergence est indépendante de la dimension

Intégration de Monte Carlo très efficace en grande dimensionnalité

60

Variable aléatoire réelle x

Densité de probabilité : p(x) probabilité que cette variable soit entre x et x+dx

est p(x) dx

61

L’espérance est linéaire :

E[f1(x) + a f2(x)] = E[f1(x)] + a E[f2(x)]

62

Page 7: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

7

Soit la fonction f(x) avec x dans [a b]

Calculons :

Considérons une variable aléatoire x

Si x a une distribution uniforme, I=E[f(x)] par définition de l’espérance

63

Soit N variables indépendantes identiquement distribuées (IID) xi (N échantillions) de même probabilité (ici uniforme)

Définissons :

Par linéarité de l’espérance :E[FN] = E[f(x)]

estimateur deMonte Carlo

64

Mesure de l’écart à l’espérance

Déviation standard s : racine de la variance

Propriétés : s2[x+y] = s2[x] + s2[y] + 2 Cov[x,y]

s2[ax] = a2 s2[x]

65

Variables indépendantes Cov[xi, xj]=0 si ij

Donc s (erreur) diminue en

convergence lente

66

En théorie, I=1.0

En pratique, avec une distribution uniforme

N

s2

- s2

erreur

67

Peu de restriction sur la fonction à intégrer Pas de problème de continuité, régularité…

Nécessite seulement une évaluation ponctuelle

Même convergence en dimension supérieure

Conceptuellement simple

68

Page 8: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

8

Bruité

Convergence lente

Implémentation efficace difficile

69 70

Un rayon par pixel

En chaque point visible : tirage aléatoire de rayons pour accumuler la radiance

71

Un rayon par pixel

En chaque point visible : tirage aléatoire de rayons pour accumuler la radiance

Continuer récursivement

72

Un rayon par pixel

En chaque point visible : tirage aléatoire de rayons pour accumuler la radiance

Continuer récursivement

Échantillonner la lampe systématiquement

73

1 échantillon par pixel

74

Page 9: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

9

256 échantillons par pixel

75

Tracer seulement un rayon par récursion

Mais lancer plusieurs rayons primaires par pixel

76

10 paths/pixel

77

10 paths/pixel

78

100 paths/pixel

79

Séquence aléatoire fixe

La structure apparait dans l’erreur

80

Page 10: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

10

Envoyer des rayons aléatoires

Échantillonner l’équation de rendu

Pas de maillage nécessaire ni de stockage supplémentaire

Pas de limitation Ni sur la réflectance

Ni sur la géométrie

Extrêmement flexible

Peut être bruité et/ou très lent Accélération possible : « irradiance caching »

81 82

83 84

L’illumination indirecte varie spatialement lentement

85

L’illumination indirecte varie spatialement lentement

86

Page 11: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

11

L’illumination indirecte varie lentement

Interpoler entre des valeurs proches

87

L’illumination indirecte varie lentement

Interpoler entre des valeurs du cache

Mais calculer l’éclairage directe complètement

88

Points jaunes : contribution de l’illumination indirecte

89

Pré-calcul : lancer des rayons depuis les lampes

90

Stocker les photons (position + intensité

+ direction) sur la géométrie ou dans une structure accélératrice

91

Lancer les rayons primaires

Reconstruire la radiance des rayons secondaire en regardant les photons voisins

92

Page 12: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

12

93

Photon map Rendu final

Photon mapspéciale réfraction

94

V-Ray 1.5 for 3ds Max

95

CyberMotion 3D-Designer

96

5 millions de photons depuis une seule lampe

97

CyberMotion 3D-Designer

98

Yafray : ray tracer open source avec Photon Mapping, intégré dans Blender.

Page 13: PowerPoint Presentationevasion.imag.fr/Enseignement/cours/2010/SIA/IlluminationGlobale2_… · Problème : réaliser cette intégration (intégrale quadruple) car pas de méthode

12/01/2010

13

99http://en.wikipedia.org/wiki/POV-Ray

Solution indépendante du point de vue Stockage sur les surfaces

Bonne représentation des caustiques

Bruité : phase de lissage des échantillons Reconstruction de la fonction de radiance

Se code en deux passes à partir d’un lancer de rayon dans les deux directions

100

On ne sait pas… Dépend de l’évolution du hardware

Des méthodes de résolution d’équations (intégrales, systèmes linéaires…)

Des méthodes d’accélération

De la quantité de mémoire (part du pré-calcul, stockage de structure de donnée complexe…)

Tout le monde attend l’illumination en temps réel Pré-calcul du transfert de radiance

Ambient occlusion en espace image

Illumination indirecte approximée en espace image

101