04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3...

15
04/07/07 RTDistribuído César Palom o <mail: cpalomo at inf.p uc-rio.br> 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo

Transcript of 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3...

Page 1: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

1

Fundamentos de CGProf Marcelo Gattass

2007-s01

Trabalho 3 – Ray Tracing Distribuído

César Palomo

Page 2: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

2

Ray Tracing Para cada pixel:

Calcular reta que une centro de projeção ao centro deste ponto

Determinar interseções desta reta com objetos da cena (etapa onerosa)

Pintar o ponto com a cor do objeto mais próximo (leva em conta iluminação)

Page 3: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

3

Ray Tracing

Page 4: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

4

Prós e contras

Permite geração de imagens foto-realistas

Baixa performance (se comparado a Z-Buffer, por exemplo)

Aliasing Sombras bem definidas

(Sharp Shadows) Todos os objetos em

foco Objetos em movimento

aparecem congeladosAmostragem uniforme

Page 5: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

5

Ray Tracing Distribuído Intensidade de um pixel na tela é uma

função analítica que envolve integrais complexas

RT Distribuído avalia integrais lançando vários raios na mesma região segundo uma distribuição estocástica

Avaliação de Monte Carlo das integrais pelo conjunto de raios lançados

Page 6: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

6

Ray Tracing Distribuído Permite calcular cores médias mais

corretas, pois raios são melhor distribuídos dentro da área de contribuição luminosa para um determinado pixel

Distribuição aleatória introduz ruído uniformemente distribuído pela imagem: como a visão humana é mais tolerante a ruído aleatório do que a singularidades locais, resulta em melhores resultados visuais

Page 7: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

7

Ray Tracing Distribuído Processo:

Dividir o pixel em uma grade mxn. Para subpixel desta grade, lançar um

raio aleatório e processa de modo idêntico ao ray tracing convencional

Depois de lançar um raio para cada subpixel, efetuar uma ponderação dos valores medidos para obtenção da cor final

Page 8: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

8

Efeitos interessantes Penumbra Antialiasing Motion Blur Depth of field

Page 9: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

9

Proposta inicial Implementação do Ray Tracing

Distribuído partindo do programa disponibilizado pelo professor

Comparar resultados obtidos com respeito a Antialiasing, Motion Blur e Depth of field

Page 10: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

10

O que foi desenvolvido Implementação do Ray Tracing

Distribuído partindo do programa disponibilizado pelo professor

Comparação de resultados obtidos com respeito a Antialiasing

Motion Blur e Depth of field: future work

Page 11: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

11

Antialiasing: comparação do RT Convencional X Distribuído

Page 12: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

12

Antialiasing: comparação do RT Convencional X Distribuído

Page 13: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

13

Iluminação global Foi implementada uma tentativa de

cálculo de illuminação global em cada ponto de interseção de um raio com um objeto

Contribuição direta: calculada do mesmo modo como no Ray Tracing convencional

Contribuição indireta: raios aleatórios ao longo de uma casca esférica de raio unitário

Page 14: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

14

Iluminação global: 500 raios RT x RTD

Page 15: 04/07/07 RTDistribuído César Palomo 1 Fundamentos de CG Prof Marcelo Gattass 2007-s01 Trabalho 3 – Ray Tracing Distribuído César Palomo.

04/07/07 RTDistribuído César Palomo <mail: cpalomo at inf.puc-rio.br>

15

Trabalho futuro Testar motion blur e depth of field com

Ray Tracing Distribuído Realizar penumbra com Ray Tracing

Distribuído através de fontes luminosas não pontuais

Estudar modelos mais fiéis para cálculo da iluminação global: checar photon mapping e cálculo de radiância com ray tracing