17
Ray Tracing Luís César [email protected]

Ray Tracing Luís César [email protected]. Ray Tracing Turner Whitted,1979/80

Embed Size (px)

Citation preview

Page 1: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Ray Tracing

Luís Cé[email protected]

Page 2: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Ray Tracing

Turner Whitted,1979/80 http://radsite.lbl.gov/radiance/book/img/plate10.jpg

Page 3: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Ray Tracing

http://radsite.lbl.gov/radiance/book/img/plate9.jpg

http://radsite.lbl.gov/radiance/gallery/image/29n1.jpg

Page 4: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Estado da Arte:

Page 5: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Implementação: Cena 3D

• A eficiência de um ray tracer está dependente da eficiência da estrutura de ordenação do espaço 3D utilizada. Uma estrutura de ordenação eficiente diminui o número de interseções raio/primitiva geométrica, diminuindo consequentemente, o tempo de rendering. Exemplos típicos de estruturas de aceleração são grids, kd-trees e hierarquias de volumes.

Page 6: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Interactive Ray Tracing

Page 7: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Otimizações:

• KD-tree adaptativa com SAH;• construir uma boa relação custo-otimização da kD-Tree

com a superfície heurística.

• Compactação;• Usar nó de 8-bytes.

• kD-Tree.• Interseção e Passagem.

Page 8: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Otimizações: (Interseção) Surface Area Heuristic

Page 9: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Otimizações: (Passagem) AABB (Axis Aligned BoundBox - caixa envolvente alinhada aos eixos)

Usando esta estimativa de custo, são avaliadas várias possibilidades e é escolhida a que tem menor custo, voltando a fazê-lo recursivamente. Na implementação foi usado o algoritmo de min-max binning.

Page 10: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Otimizações: (Passagem)

Page 11: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Apresentação:

• Ray Tracer (Simples);

• Ray Tracer (Interativo).

Page 12: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Resultados:• Ray Tracer (Simples):

• Poucos Objetos ~ 23.7 segundos;• Muitos Objetos ~ 70.0 segundos.

• Ray Tracer (Interativo): • Poucos Objetos ~ 0.07 segundos;• Muitos Objetos ~ 0.15 segundos.

Page 13: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Mais Otimizações:

Page 14: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Mais Otimizações:

Page 15: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Idéias???

Page 16: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

Bibliografia• Hearn, D., P. Baker, ComputerGraphicsusingOpenGL,

AddisonWesley,2004

• Foley, J., A. VanDam, S. Feiner, J. Hughes, R. Phillips, Introductionto ComputerGraphics, AddisonWesley, 1994

• Foley, J., A. VanDam, S. Feiner, J. Hughes, ComputerGraphics, PrinciplesandPractice, 2nd. Ed., AddisonWesley, 1991

• "State-of-the-Art in Interactive Ray Tracing", and was written by Wald & Slusallek

Page 17: Ray Tracing Luís César lcosta@inf.puc-rio.br. Ray Tracing Turner Whitted,1979/80

AgradecimentoForam usados slides e/ou apontamentos de

disciplinas da área, disponíveis na Web:

• João Brisson Lopes, Computação Gráfica. Inst. Superior Técnico. • Scott Schaefer, CPSC441: Computer Graphics. Texas A&M University.• Andries Van Dam, CS123: Introduction to Computer Graphics. Brown

University.• Nick Chapman's Real Time Ray Tracer.• Jacco Bikker Arauna Engine.• Ademar Gonçalves Ray Tracing Interativo.• David Luebke e Steven Parker NVIDIA Research.