Algoritmo de Photon Mapping
                    Vitor F. Pamplona




    Imagem extraída de H.W. Jensen 1986: Global Illu...
Relembrando

             


                              x

                                          Luz emitida
     ...
Relembrando

             


                              x

                                          Luz emitida
     ...
Relembrando
                              
                                                        '
            


   ...
Relembrando
                               
                                                         '
            


 ...
Relembrando
                                     
                                                                '
    ...
Nosso problema
                               
                                                         '
            
...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Path Tracing




          Kajiya, James T.Copyright Vitor F. Pamplona
                           (1986). The rendering eq...
Photon Mapping




            Copyright Vitor F. Pamplona   18
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Photon Tracing




                 Copyright Vitor F. Pamplona   21
Photon Tracing
                             Luz




             Vidro                      Espelho




                 C...
Photon Tracing
                             Luz
                                        Lançar Fótons




             Vid...
Photon Tracing
                             Luz




             Vidro                      Espelho




                 C...
Photon Tracing
                                    Luz




                                                      Roleta Ru...
Photon Tracing
                                Luz




                                                  Roleta Russa

   ...
Photon Tracing
                             Luz




                                               Refletiu




          ...
Photon Tracing
                             Luz
                                               Absorveu

                 ...
Photon Tracing
                             Luz




                                               Refletiu




          ...
Photon Tracing
                             Luz




                                                        Refletiu




 ...
Photon Tracing
                             Luz




                            Refletiu
             Vidro               ...
Photon Tracing
                             Luz




             Vidro                      Espelho


                    ...
Photon Tracing
                             Luz




             Vidro                      Espelho
                 Refle...
Photon Tracing
                                  Luz




          Refratou


                     Vidro                  ...
Photon Tracing
                                    Luz




       Absorveu



                       Vidro                ...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Path Tracing




                             Vidro
                                Espelho




               Copyright V...
Path Tracing




                             Vidro
                                Espelho




               Copyright V...
Path Tracing                                           N=3
                                             p3

              ...
Path Tracing                                              N=3
                                             p3

           ...
Path Tracing                                                   N=3
                                             p3

      ...
Path Tracing                                     N=3




                             Vidro
                              ...
Path Tracing                                          N=3




                                             p2
            ...
Path Tracing                                                       N=3




                                               ...
Path Tracing                                 N=3




                             Vidro
                                Es...
Path Tracing                                     N=3




                             Vidro           x
                  ...
Path Tracing                                     N=3




                       p2



                             Vidro  ...
Path Tracing                                                   N=3




                                                   ...
Path Tracing                                     N=3




                       p2



                             Vidro  ...
Path Tracing                                     N=3




                       p2



                             Vidro  ...
Path Tracing                                 N=3




                             Vidro
                                Es...
Path Tracing                                 N=3




                             Vidro
                                Es...
Path Tracing                                      N=3




                             Vidro
                             ...
Path Tracing                                                        N=3




                                              ...
Path Tracing                                      N=3




                             Vidro
                             ...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária




                     Copyright Vitor F. Pamplona   58
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                         p2
    ...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                         p2
    ...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                         p2
    ...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                                ...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                                ...
Estrutura de Dados Espacial: Kd-Tree
●   Árvore binária


                                                                ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Estrutura de Dados Espacial: Kd-Tree
●   Pesquisa pelos 2 vizinhos mais próximos


                                       ...
Armazenamento em 3D
                                               p2
                                                    ...
Armazenamento em 3D
                                               p2
                                                    ...
Armazenamento em 3D
                                               p2
                                                    ...
Armazenamento em 3D
                                               p2
                                                    ...
Armazenamento em 3D
                                               p2
                                                    ...
Mapa de Fótons
                           L2
                                                                     L1
     ...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Algoritmo de Photon Mapping
●   Photon Tracing
    ●   Emissão de fótons pelas fontes de luz
    ●   Armazenando numa estr...
Equação de Rendering
                               
                                                         '
        ...
Equação de Rendering e Mapa de Fótons
                                
                                                  ...
Equação de Rendering e Mapa de Fótons
                                
                                                  ...
Equação de Rendering e Mapa de Fótons
                                
             


                                x...
Equação de Rendering e Mapa de Fótons
                                                               N
                   ...
Equação de Rendering e Mapa de Fótons
                                                               N
                   ...
Equação de Rendering e Mapa de Fótons
                                                               N
                   ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                       N
           ...
Equação de Rendering e Mapa de Fótons
                                                                       N
           ...
Equação de Rendering e Mapa de Fótons
                                                                 N
                 ...
Equação de Rendering e Mapa de Fótons
                                                                 N
                 ...
Equação de Rendering e Mapa de Fótons
                                                                  N
                ...
Equação de Rendering e Mapa de Fótons
                                                                      N
            ...
Equação de Rendering e Mapa de Fótons
                                                                  N
                ...
Equação de Rendering e Mapa de Fótons
                                                                  N
                ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                   N
               ...
Equação de Rendering e Mapa de Fótons
                                                                    N
              ...
Equação de Rendering e Mapa de Fótons
                              
             


                              x
   ...
Equação de Rendering e Mapa de Fótons
                              
             


                              x
   ...
Acabou?




              Lo  x , = Le  x , 
      N                        2
                              d  x ,...
Acabou?




              Lo  x , = Le  x , 
      N                        2
                              d  x ,...
Tipos de Fótons


                            Difusa




        Luz




                         Refletiva
              ...
Tipos de Fótons


              Iluminação
                 Direta             Difusa




        Luz




                ...
Tipos de Fótons


              Iluminação
                 Direta             Difusa




        Luz




                ...
Tipos de Fótons


              Iluminação
                 Direta             Difusa




        Luz




                ...
Tipos de Fótons
                                 Iluminação
                                   Indireta


              Il...
Tipos de Fótons
                                 Iluminação
                                   Indireta


              Il...
Tipos de Fótons
                                 Iluminação
                                   Indireta


              Il...
Tipos de Fótons
                                 Iluminação
                                   Indireta


              Il...
Tipos de Fótons
                                 Iluminação
                                   Indireta


              Il...
Distribuição dos Fótons




               Copyright Vitor F. Pamplona   115
Distribuição dos Fótons
               Direta                    Indireta   Cáusticas




 Renderizado




 Esperado




 ...
Com 1 Único Mapa de Fótons




             



             x




                 Copyright Vitor F. Pamplona   117
Usar 3 Mapas de Fótons




             



             x
                         Direta


                 Copyright V...
Usar 3 Mapas de Fótons




             



             x
                          Indireta


                 Copyrigh...
Usar 3 Mapas de Fótons




             



             x
                         Cáusticas


                 Copyrigh...
Iluminação Direta
                                            Parâmetros
                                            Diret...
Iluminação Indireta
                                             Parâmetros
                                             D...
Cáusticas
                                          Parâmetros
                                          Direto: 0
       ...
Resultado com Poucos Fótons
                                                      Parâmetros
                             ...
Resultado com Muitos Fótons
                                            Parâmetros
                                       ...
Parâmetros do Photon Mapping
●   Quantidade de fótons para cada mapa
    ●   Quanto maior o número de fótons, menos artefa...
Parâmetros do Photon Mapping
●   Quantidade de fótons para cada mapa
    ●   Quanto maior o número de fótons, menos artefa...
Parâmetros do Photon Mapping
●   Quantidade de fótons para cada mapa
    ●   Quanto maior o número de fótons, menos artefa...
Parâmetros do Photon Mapping
●   Quantidade de fótons para cada mapa
    ●   Quanto maior o número de fótons, menos artefa...
Photon Mapping: Prós
●   Performance independe do número de pixels da imagem
    ●   Apenas 1 raio por pixel no Path Traci...
Photon Mapping: Prós
●   Performance independe do número de pixels da imagem
    ●   Apenas 1 raio por pixel no Path Traci...
Photon Mapping: Prós
●   Performance independe do número de pixels da imagem
    ●   Apenas 1 raio por pixel no Path Traci...
Photon Mapping: Contras
●   Alto uso de memória
●   Baixa performance com muitas fontes de luz
    ●   Kd-trees muito gran...
Sumário
●   Algoritmo de Photon Mapping
    ●   Photon tracing
    ●   Path tracing
●   Estrutura de dados espacial (Kd-tr...
Obrigado, perguntas?
                Vitor F. Pamplona




Imagem extraída de H.W. Jensen 1986: Global Illumination using ...
Upcoming SlideShare
Loading in...5
×

Algoritmo de Photon Mapping

852

Published on

Uma aula sobre Photon Mapping com derivação da equação de rendering e introdução a estrutura de dados KD-Tree.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
852
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Algoritmo de Photon Mapping"

  1. 1. Algoritmo de Photon Mapping Vitor F. Pamplona Imagem extraída de H.W. Jensen 1986: Global Illumination using Photon Maps
  2. 2. Relembrando  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz Chegando Atenuação Copyright Vitor F. Pamplona 4
  3. 3. Relembrando  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz Chegando Atenuação Copyright Vitor F. Pamplona 5
  4. 4. Relembrando  '  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 6
  5. 5. Relembrando  '  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 7
  6. 6. Relembrando  '  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz chegando Atenuação Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 8
  7. 7. Nosso problema  '  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 9
  8. 8. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 10
  9. 9. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 11
  10. 10. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 12
  11. 11. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 13
  12. 12. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 14
  13. 13. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 15
  14. 14. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 16
  15. 15. Path Tracing Kajiya, James T.Copyright Vitor F. Pamplona (1986). The rendering equation. Siggraph 1986 17
  16. 16. Photon Mapping Copyright Vitor F. Pamplona 18
  17. 17. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 19
  18. 18. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 20
  19. 19. Photon Tracing Copyright Vitor F. Pamplona 21
  20. 20. Photon Tracing Luz Vidro Espelho Copyright Vitor F. Pamplona 22
  21. 21. Photon Tracing Luz Lançar Fótons Vidro Espelho Copyright Vitor F. Pamplona 23
  22. 22. Photon Tracing Luz Vidro Espelho Copyright Vitor F. Pamplona 24
  23. 23. Photon Tracing Luz Roleta Russa Roleta Russa Vidro Espelho Copyright Vitor F. Pamplona 25
  24. 24. Photon Tracing Luz Roleta Russa Absorveu Vidro Espelho Copyright Vitor F. Pamplona 26
  25. 25. Photon Tracing Luz Refletiu Vidro Espelho Copyright Vitor F. Pamplona 27
  26. 26. Photon Tracing Luz Absorveu Refletiu Vidro Espelho Copyright Vitor F. Pamplona 28
  27. 27. Photon Tracing Luz Refletiu Vidro Espelho Copyright Vitor F. Pamplona 29
  28. 28. Photon Tracing Luz Refletiu Vidro Espelho Absorveu Copyright Vitor F. Pamplona 30
  29. 29. Photon Tracing Luz Refletiu Vidro Espelho Copyright Vitor F. Pamplona 31
  30. 30. Photon Tracing Luz Vidro Espelho Refletiu Copyright Vitor F. Pamplona 32
  31. 31. Photon Tracing Luz Vidro Espelho Refletiu Absorveu Copyright Vitor F. Pamplona 33
  32. 32. Photon Tracing Luz Refratou Vidro Espelho Copyright Vitor F. Pamplona 34
  33. 33. Photon Tracing Luz Absorveu Vidro Espelho Refratou Copyright Vitor F. Pamplona 35
  34. 34. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 36
  35. 35. Path Tracing Vidro Espelho Copyright Vitor F. Pamplona 37
  36. 36. Path Tracing Vidro Espelho Copyright Vitor F. Pamplona 38
  37. 37. Path Tracing N=3 p3 p2 p1 x Vidro Espelho Copyright Vitor F. Pamplona 39
  38. 38. Path Tracing N=3 p3 p2 p1 x V Vidro Espelho Copyright Vitor F. Pamplona 40
  39. 39. Path Tracing N=3 p3 p2 p1 x V 3 ∑ E  pi  I x = i=1 V Vidro Espelho Copyright Vitor F. Pamplona 41
  40. 40. Path Tracing N=3 Vidro Espelho x Copyright Vitor F. Pamplona 42
  41. 41. Path Tracing N=3 p2 Vidro Espelho p1 p3 x Copyright Vitor F. Pamplona 43
  42. 42. Path Tracing N=3 3 ∑ E  pi  I x = i=1 V p2 Vidro Espelho V p1 p3 x Copyright Vitor F. Pamplona 44
  43. 43. Path Tracing N=3 Vidro Espelho Copyright Vitor F. Pamplona 45
  44. 44. Path Tracing N=3 Vidro x Espelho Copyright Vitor F. Pamplona 46
  45. 45. Path Tracing N=3 p2 Vidro x Espelho p1 p3 Copyright Vitor F. Pamplona 47
  46. 46. Path Tracing N=3 3 ∑ E  pi  p2 I x = i=1 V Vidro x Espelho V p1 p3 Copyright Vitor F. Pamplona 48
  47. 47. Path Tracing N=3 p2 Vidro x Espelho p1 p3 Copyright Vitor F. Pamplona 49
  48. 48. Path Tracing N=3 p2 Vidro x Espelho p1 p3 Copyright Vitor F. Pamplona 50
  49. 49. Path Tracing N=3 Vidro Espelho Copyright Vitor F. Pamplona 51
  50. 50. Path Tracing N=3 Vidro Espelho x Copyright Vitor F. Pamplona 52
  51. 51. Path Tracing N=3 Vidro Espelho p1 p3 x p2 Copyright Vitor F. Pamplona 53
  52. 52. Path Tracing N=3 3 ∑ E  pi  I x = i=1 V Vidro Espelho p1 p3 x p2 V Copyright Vitor F. Pamplona 54
  53. 53. Path Tracing N=3 Vidro Espelho p1 p3 x p2 Copyright Vitor F. Pamplona 55
  54. 54. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 56
  55. 55. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 57
  56. 56. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária Copyright Vitor F. Pamplona 58
  57. 57. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 p1 p3 p4 Copyright Vitor F. Pamplona 59
  58. 58. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 L1 p1 p3 p4 Copyright Vitor F. Pamplona 60
  59. 59. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 L1 p1 p3 L2 p4 Copyright Vitor F. Pamplona 61
  60. 60. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 L1 p1 p3 L2 p1 p2 p4 Copyright Vitor F. Pamplona 62
  61. 61. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 L1 p1 p3 L2 L3 p1 p2 p4 Copyright Vitor F. Pamplona 63
  62. 62. Estrutura de Dados Espacial: Kd-Tree ● Árvore binária p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 p4 Copyright Vitor F. Pamplona 64
  63. 63. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Copyright Vitor F. Pamplona 65
  64. 64. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Copyright Vitor F. Pamplona 66
  65. 65. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Copyright Vitor F. Pamplona 67
  66. 66. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Mais próximos: p4 Copyright Vitor F. Pamplona 68
  67. 67. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Mais próximos: p4, p3 Copyright Vitor F. Pamplona 69
  68. 68. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Mais próximos: p4, p3 Copyright Vitor F. Pamplona 70
  69. 69. Estrutura de Dados Espacial: Kd-Tree ● Pesquisa pelos 2 vizinhos mais próximos p2 L1 p1 p3 L2 L3 p1 p2 p3 p4 x p4 Mais próximos: p4, p3 Copyright Vitor F. Pamplona 71
  70. 70. Armazenamento em 3D p2 p4 p3 p1 p5 p6 p9 p8 p7 Copyright Vitor F. Pamplona 72
  71. 71. Armazenamento em 3D p2 p4 p3 p1 p5 p6 p9 p8 p7 Copyright Vitor F. Pamplona 73
  72. 72. Armazenamento em 3D p2 p4 p3 p1 p5 p6 p9 p8 p7 Copyright Vitor F. Pamplona 74
  73. 73. Armazenamento em 3D p2 p4 p3 p1 p5 p6 p9 p8 p7 Copyright Vitor F. Pamplona 75
  74. 74. Armazenamento em 3D p2 p4 p3 p1 p5 p6 p9 p8 p7 Copyright Vitor F. Pamplona 76
  75. 75. Mapa de Fótons L2 L1 p2 p4 L8 L4 p3 L2 L3 p1 L5 L4 L5 L6 L7 p5 p1 p2 P3 L8 p6 p7 p8 p9 L1 p6 p4 p5 L7 L6 p8 p7 p9 L3 Copyright Vitor F. Pamplona 77
  76. 76. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 78
  77. 77. Algoritmo de Photon Mapping ● Photon Tracing ● Emissão de fótons pelas fontes de luz ● Armazenando numa estrutura de dados ● Path tracing ● Para cada superfície difusa – Consulta os fótons armazenados – Soma a radiância local – Aplica na equação de rendering Copyright Vitor F. Pamplona 79
  78. 78. Equação de Rendering  '  x Luz emitida Lo  x , = Le  x ,  ∫ f r  x , ' ,  Li  x , ' − '⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 80
  79. 79. Equação de Rendering e Mapa de Fótons  '  x ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 81
  80. 80. Equação de Rendering e Mapa de Fótons  '  Photon Tracing x ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 82
  81. 81. Equação de Rendering e Mapa de Fótons   x ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 83
  82. 82. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 84
  83. 83. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 85
  84. 84. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  = dE dt ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 86
  85. 85. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Luz chegando Atenuação Copyright Vitor F. Pamplona 87
  86. 86. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Radiância Atenuação Copyright Vitor F. Pamplona 88
  87. 87. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V 2 x d  x ,− '  Fluxo  L x , ' = − '⋅n d  ' dA ∫ f r  x , ' ,  Li  x ,  ' −'⋅n d ' BRDF Radiância Atenuação Copyright Vitor F. Pamplona 89
  88. 88. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V 2 x d  x ,− '  Fluxo  L x , ' = − '⋅n d  ' dA 2 d  x ,− '  ∫ f r  x , ' ,  −'⋅n d ' −'⋅n d ' dA Atenuação BRDF Radiância Copyright Vitor F. Pamplona 90
  89. 89. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  2 d  x ,− '  ∫ f r  x , ' ,  −'⋅n d ' −'⋅n d ' dA Atenuação BRDF Radiância Copyright Vitor F. Pamplona 91
  90. 90. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  2 d  x ,− '  ∫ f r  x , ' ,  −'⋅n d ' −'⋅n d ' dA Atenuação BRDF Radiância Copyright Vitor F. Pamplona 92
  91. 91. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  2 d  x ,− '  ∫ f r  x , ' ,  −'⋅n d ' dA BRDF Radiância Copyright Vitor F. Pamplona 93
  92. 92. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Fluxo  2 d  x ,− '  ∫ f r  x , ' ,  dA BRDF Radiância Copyright Vitor F. Pamplona 94
  93. 93. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Consulta ao Photon Map 2 d  x ,− '  ∫ f r  x , ' ,  dA BRDF Radiância Copyright Vitor F. Pamplona 95
  94. 94. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Consulta ao Photon Map 2 d  x ,− '  ∫ f r  x , ' ,  dA BRDF Radiância Copyright Vitor F. Pamplona 96
  95. 95. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  dA i=1 BRDF Radiância Copyright Vitor F. Pamplona 97
  96. 96. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  dA i=1 BRDF Radiância Copyright Vitor F. Pamplona 98
  97. 97. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  r 2 i=1 BRDF Radiância Copyright Vitor F. Pamplona 99
  98. 98. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V Fótons estão sempre sobre uma superfície x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  r 2 i=1 BRDF Radiância Copyright Vitor F. Pamplona 100
  99. 99. Equação de Rendering e Mapa de Fótons N  ∑ E  pi   I x = i=1 V Fótons estão sempre sobre uma superfície x Com mais fótons o círculo de coleta diminui aproximando uma Consulta ao superfície plana Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  r 2 i=1 BRDF Radiância Copyright Vitor F. Pamplona 101
  100. 100. Equação de Rendering e Mapa de Fótons   x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  r 2 i=1 BRDF Radiância Copyright Vitor F. Pamplona 102
  101. 101. Equação de Rendering e Mapa de Fótons   x Consulta ao Photon Map N 2 d  x ,−'  ∑ f r  x ,  ' ,  r 2 i=1 BRDF Radiância Copyright Vitor F. Pamplona 103
  102. 102. Acabou? Lo  x , = Le  x ,  N 2 d  x ,−'  ∑ f r  x , ' ,  2 i=1 r Copyright Vitor F. Pamplona 104
  103. 103. Acabou? Lo  x , = Le  x ,  N 2 d  x ,−'  ∑ f r  x , ' ,  2 i=1 r Copyright Vitor F. Pamplona 105
  104. 104. Tipos de Fótons Difusa Luz Refletiva Transparente Copyright Vitor F. Pamplona 106
  105. 105. Tipos de Fótons Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 107
  106. 106. Tipos de Fótons Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 108
  107. 107. Tipos de Fótons Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 109
  108. 108. Tipos de Fótons Iluminação Indireta Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 110
  109. 109. Tipos de Fótons Iluminação Indireta Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 111
  110. 110. Tipos de Fótons Iluminação Indireta Iluminação Direta Difusa Luz Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 112
  111. 111. Tipos de Fótons Iluminação Indireta Iluminação Direta Difusa Luz Cáusticas Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 113
  112. 112. Tipos de Fótons Iluminação Indireta Iluminação Direta Difusa Luz Cáusticas Refletiva Iluminação Transparente Direta Copyright Vitor F. Pamplona 114
  113. 113. Distribuição dos Fótons Copyright Vitor F. Pamplona 115
  114. 114. Distribuição dos Fótons Direta Indireta Cáusticas Renderizado Esperado Copyright Vitor F. Pamplona 116
  115. 115. Com 1 Único Mapa de Fótons  x Copyright Vitor F. Pamplona 117
  116. 116. Usar 3 Mapas de Fótons  x Direta Copyright Vitor F. Pamplona 118
  117. 117. Usar 3 Mapas de Fótons  x Indireta Copyright Vitor F. Pamplona 119
  118. 118. Usar 3 Mapas de Fótons  x Cáusticas Copyright Vitor F. Pamplona 120
  119. 119. Iluminação Direta Parâmetros Direto: 100.000 Indireto: 0 Cáusticas: 0 Copyright Vitor F. Pamplona 121
  120. 120. Iluminação Indireta Parâmetros Direto: 0 Indireto: 100.000 Cáusticas: 0 Copyright Vitor F. Pamplona 122
  121. 121. Cáusticas Parâmetros Direto: 0 Indireto: 0 Cáusticas: 100.000 Copyright Vitor F. Pamplona 123
  122. 122. Resultado com Poucos Fótons Parâmetros Círculos na cena Direto: 100.000 Indireto: 100.000 Cáusticas: 200.000 N: 100 Artefatos Sombras suaves Copyright Vitor F. Pamplona 124
  123. 123. Resultado com Muitos Fótons Parâmetros Direto: 2.000.000 Indireto: 30.000.000 Cáusticas: 200.000 N: 20.000 Copyright Vitor F. Pamplona 125
  124. 124. Parâmetros do Photon Mapping ● Quantidade de fótons para cada mapa ● Quanto maior o número de fótons, menos artefatos ● Deve-se estimar uma boa proporção de fótons Copyright Vitor F. Pamplona 126
  125. 125. Parâmetros do Photon Mapping ● Quantidade de fótons para cada mapa ● Quanto maior o número de fótons, menos artefatos ● Deve-se estimar uma boa proporção de fótons Milhares de Fótons Milhões de Fótons Copyright Vitor F. Pamplona 127
  126. 126. Parâmetros do Photon Mapping ● Quantidade de fótons para cada mapa ● Quanto maior o número de fótons, menos artefatos ● Deve-se estimar uma boa proporção de fótons ● Número de fótons vizinhos a integrar (N) ● Quanto maior, mais suave serão as variações de iluminação Copyright Vitor F. Pamplona 128
  127. 127. Parâmetros do Photon Mapping ● Quantidade de fótons para cada mapa ● Quanto maior o número de fótons, menos artefatos ● Deve-se estimar uma boa proporção de fótons ● Número de fótons vizinhos a integrar (N) ● Quanto maior, mais suave serão as variações de iluminação N = 100 N = 20.000 Copyright Vitor F. Pamplona 129
  128. 128. Photon Mapping: Prós ● Performance independe do número de pixels da imagem ● Apenas 1 raio por pixel no Path Tracing Copyright Vitor F. Pamplona 130
  129. 129. Photon Mapping: Prós ● Performance independe do número de pixels da imagem ● Apenas 1 raio por pixel no Path Tracing ● Suporta vários materiais ● Superfícies difusas não lambertianas, ● Superfícies refletivas e transparentes ● Participating media e subsurface scattering Copyright Vitor F. Pamplona 131
  130. 130. Photon Mapping: Prós ● Performance independe do número de pixels da imagem ● Apenas 1 raio por pixel no Path Tracing ● Suporta vários materiais ● Superfícies difusas não lambertianas, ● Superfícies refletivas e transparentes ● Participating media e subsurface scattering ● Suporta spectral rendering ● Suavização do ruído inerente dos métodos de Monte Carlo ● Se acopla facilmente nas implementações de ray tracing Copyright Vitor F. Pamplona 132
  131. 131. Photon Mapping: Contras ● Alto uso de memória ● Baixa performance com muitas fontes de luz ● Kd-trees muito grandes ● Parâmetros são escolhidos arbitrariamente ● Não executa em tempo real Copyright Vitor F. Pamplona 133
  132. 132. Sumário ● Algoritmo de Photon Mapping ● Photon tracing ● Path tracing ● Estrutura de dados espacial (Kd-tree) ● A adaptação da equação de rendering ● Tipos de iluminação e os mapas de fótons ● Parâmetros a arbitrar ● Prós e Contras do Algoritmo Copyright Vitor F. Pamplona 142
  133. 133. Obrigado, perguntas? Vitor F. Pamplona Imagem extraída de H.W. Jensen 1986: Global Illumination using Photon Maps

×