1 / 72

Éclairage global, volumes, sources larges

Éclairage global, volumes, sources larges. Nicolas Holzschuch i MAGIS/GRAVIR IMAG. Éclairage global. Techniques locales : textures, BRDF, rendu volumique Techniques globales : radiosité, lancer de rayons. En résumé :. Il manque quelque chose. Éclairage global avec BRDF quelconques

althea
Download Presentation

Éclairage global, volumes, sources larges

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Éclairage global, volumes, sources larges Nicolas Holzschuch iMAGIS/GRAVIR IMAG

  2. Éclairage global • Techniques locales : • textures, BRDF, rendu volumique • Techniques globales : • radiosité, lancer de rayons

  3. En résumé :

  4. Il manque quelque chose • Éclairage global avec BRDF quelconques • Et volumes participants

  5. Éclairage global avec BRDF quelconques • Monte-Carlo • Théorie • Pratique : • ça marche pas • pourquoi ? • Bi-directional Path Tracing • Metropolis Light Transport • Photon Maps

  6. L ( x ,  ,  )  L ( x ,  ,  )  0 0 e 0 0   ( x ,  ,  ,  ,  ) L ( x ,  ,  ) cos  d  bd 0 0 i  Équation de rendu • Équilibre énergétique : • Radiance émise = radiance propre + radiance réfléchie

  7. ( RL )( x ,  ,  )  0 0   ( x ,  ,  ,  ,  ) L ( x ,  ,  ) cos  d  bd 0 0 i  Solution formelle de l'équation • Opérateur de réflexion • Opérateur intégral • Agit sur la radiance

  8. L  L  RL e  1 L  [ I  R ] L e   n L  ( R ) L e n  0 Solution formelle • Donc : • D'où : • Avec une série de Neumann :

  9.  n L  ( R ) L e n  0 Sens physique • Radiance propre (Le)… • plus radiance réfléchie une fois (RLe)… • plus radiance réfléchie deux fois (R2Le)… • plus radiance réfléchie trois fois…

  10. Intégration de Monte-Carlo • Chaînes de Markov • Méthode générique de calcul d'intégrales multi-dimensionnelles • Principe (en gros) : • Échantillonner au hasard la fonction à intégrer • Additionner les échantillons multipliés par leur probabilité • Le résultat, c'est la valeur de la fonction

  11. Intégration, dimension finie • À titre d'exemple • Résoudre : x=a+Mx • Chemin w de longueur k : w=(n1, n2,…,nk) • nientier entre 1 et n. • Valeur de xi pour ce chemin :

  12. Dimension finie (suite) • Moyenne sur tous les chemins • Valeur exacte = moyenne sur tous les chemin possibles • Valeur approchée = moyenne sur tous les chemins testés • Probabilité d'un chemin : • Produit de l'état initial (n0) et des probabilités de chaque transition entre état (nini+1) • w=(n1, n2,…,nk)

  13. Équation de rendu • Pareil, mais en dimension infinie : • Choisir un chemin au hasard, • De longueur k • Calculer la valeur de l'état pour ce chemin • Moyenne des valeurs trouvées, pondérée par la probabilité du chemin • Chemin : • Chemin parcouru par la lumière • État : irradiance sur une surface • Transition : passage d'une surface à une autre

  14. Chemin • Point de départ : un pixel de l'image, x • Premier état : la radiance de la surface visible de ce pixel, au point x' • État suivant : la radiance d'une surface visible de x', x" • Transition : BRDF au point x', venant de x'', dans la direction de x • État suivant : la radiance d'une surface visible de x'', x'''...

  15. Chemin • Pour chaque étape de la chaîne de Markov, mettre à jour l'intensité du pixel : • r : BRDF, quelconque • G : terme géométrique, 1/r2 et visibilité

  16. Choix du chemin • Pixel de départ, fixé. • Pour chaque point d'intersection : • Tirer la direction du rayon réfléchi au hasard • En tenant compte de la BRDF • Recommencer pour chaque pixel • 10, 100, 1000 échantillons par pixel • L'image converge lentement : • Neige au début, puis image bruité, puis image

  17. Terminaison du chemin • Nombre aléatoire t entre 0 et 1 • Comparer avec la réflectance r • t > r : absorption • t < r : réflexion • Autres techniques: • Poids w de la particule influencé par la réflectance • Terminaison si w en dessous d'un certain seuil • Roulette russe : on augmente le poids des chemins survivants

  18. (Distributed) Light Ray-Tracing • Pareil, mais les rayons partent des sources lumineuses • Sources lumineuses potentiellement surfaciques • Échantillonnage spatial de la source • 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

  19. Light ray-tracing

  20. Méthodes multi-passes • MCRT : • moins il y a de rayons, plus ça converge vite • Cas idéal : toutes les surfaces sont presque spéculaires • Cas le pire : toutes les surfaces sont diffuses • Idée : • Traiter chaque chemin par la méthode adaptée • Les surfaces diffuses par la radiosité • L'éclairage direct par Eye Ray-Tracibng • Les caustiques par Light Ray-Tracing • Les choses compliquées par MCRT

  21. Combinaison des méthodes • Problèmes : • Ordre des méthodes • Représentation commune (LRT/Radiosité) • Ordre : • Light Ray-Tracing • Passe de radiosité • Passe de MCRT • Passe de Eye Ray-Tracing

  22. Bi-directional Path Tracing • Combinaison de deux méthodes : • Light Ray-Tracing : chemin partant de la source • Eye Ray-Tracing : chemin partant de l'œil • Plus des rayons connectant chaque point des deux chemins • Valeur au pixel calculée par ces rayons

  23. BDPT : flux à un pixel • Cij : contribution après i rebonds depuis la source, j rebonds depuis l'œil • wij : poids. À choisir (degré de liberté) • 1 si i=0, 0 sinon : MCRT classique

  24. Choix des poids • Wj = degré de spécularité au point yj • Surfaces diffuses : light path + important • Surfaces spéculaires : eye path + important

  25. Wj = degré de spécularité au point yj

  26. Metropolis Light Transport • Au départ, MCRT • Nombreux chemins initiaux • Mutations des chemins • Bouger un point du chemin • Allonger le chemin • Techniques pour choisir les mutation de façon efficace

  27. Mutations

  28. Mutations

  29. Mutations

  30. Metropolis : résultats

  31. Bi-directional Path Tracing, 40 échantillons par pixel

  32. Metropolis LT, 250 mutations par pixel (même temps de calcul)

  33. Bi-directional Path Tracing, 210 échantillons par pixel

  34. Metropolis LT, 100 mutations par pixel (même temps de calcul)

  35. Photon Maps • Première passe : construction • On envoie des photons dans la scène • En partant de la source • Path-tracing classique : • Ils sont réfléchis, meurent… • Chaque photon touchant une surface est stocké dans la photon map de la surface • Avec sa direction incidente • Balanced k-d tree

  36. Affichage des photon maps • Pour afficher un point x d'une surface : • On prend la sphère de centre x de rayon r tel que N photons sont dans la sphère • Élément de surface d'aire pr2

  37. Filtre des photons • Densité de photons trop faible : • Flou • Pour éviter ça : • On filtre. L'importance des photons dépend de la distance à x : Normalisation du filtre

  38. Effet du filtre

  39. Photon Map seule (5 mn)

  40. Photon Maps : algorithme complet • Étape 1 : construire 2 photon maps • Caustiques : photons à haute énergie,très dense • Éclairage global : moins de photons, à peu près tous la même énergie • Stockage de photons d'ombre • Étape 2 : Rendu • Par MCRT • Séparer les termes pour un meilleur traitement • Traitement précis ou approché

More Related