1 / 19

Otimização de Raytracing

Ian Medeiros Joner Duarte Vanessa Leite. Otimização de Raytracing. Raytracing.

red
Download Presentation

Otimização de Raytracing

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. Ian Medeiros Joner Duarte Vanessa Leite Otimização de Raytracing

  2. Raytracing O termo raytracing é usado livremente para designar uma infinidade de diferentes abordagens ao problema de rendering, desde que baseados no princípio de interseção de uma semireta (raio) com primitivas geométricas.

  3. Raytracing: Complexidade O algoritmo usado para determinar a visibilidade ao longo de um raio requer que cada raio seja interseptado (testado) com TODAS as primitivas geométricas da cena O tempo para cada raio é, portanto, linear com o número de primitivas N:

  4. No entanto, cada raio não passa próximo da maioria das primitivas Raytracing: Complexidade

  5. Raytracing: otimizações iniciais • Melhorias no código: • Utilização de #define • Mudança de código economizando uma chamada isInShadow • Utilização de Paralelismo: • OpenMP

  6. O objetivo das estruturas de aceleração é diminuir o número de interseções por raio Isso pode ser feito utilizando-se dois critérios: Permitindo a rejeição rápida e simultânea de grupos de primitivas Se possível, ordenando o processo de procura (intersecções), tal que as primitivas mais próximas da origem do raio sejam processadas primeiro, evitando processar as mais distantes se for encontrada uma interseção. Raytracing: Estruturas de Aceleração

  7. Duas abordagens: Subdivisão do espaço: Grades regulares, Octrees, Kd-Ttrees – permitem aplicar os critérios 1 e 2 Subdivisão dos objetos: Bound Volume Hierarchy (BVH) – permite aplicar o critério 1. Raytracing: Estruturas de Aceleração

  8. O espaço 3D é subdividido montando-se uma grade regular que o subdivide em espaços com mesma dimensão Raytracing: Grade regular

  9. Vantagens: Construção muito rápida Desvantagens: Travessia pouco eficiente devido à má distribuição das primitivas pelos espaços Raytracing: Grade regular

  10. O espaço é hierarquicamente e adaptativamente subdividido em 8 espaços Compromisso entre construção e travessia Raytracing: Octree

  11. O espaço é subdividido em dois por um plano Cada um dos subespaços resultantes é depois subdividido da mesma forma até atingir um critério de parada Travessia mais eficiente se um bom critério de subdivisão for utilizado (ex: SAH) Quanto mais sofisticado o critério de subdivisão maior é o tempo necessário para a construção da árvore. Raytracing: KD-Tree

  12. Raytracing: KD-Tree (SAH) SAH (Surface Area Heuristic) é uma heurística que leva em consideração a probabilidade de um determinado objeto ser interceptado ou não por um raio. CustoDivisao = CustoTravessia + P[pedaçoEsquerda |Cena] C(pedaçoEsquerda) + P[pedaçoDireita| Cena] C(pedaçoDireita)

  13. X Y Z A C B D Raytracing: KD-Tree X Z tmin B Y D C A tmax

  14. Os objetos são agrupados dentro de bounding volumes. Cada um desses grupos é depois subdividido hierarquicamente por outros volumes Raytracing: Bounding Volume Hierarchy

  15. Não ordena o espaço Construção semelhante à KD-Tree Travessia ligeiramente inferior à KD-Tree Raytracing: Bounding Volume Hierarchy

  16. A complexidade do raytracing com a utilização de estruturas de aceleração é logaritmica com relação ao número de estruturas na cena: O tempo de construção depende do critério de subdivisão do espaço/agrupamento de primitivas Raytracing: Complexidade 2

  17. Critérios sofisticados (como o SAH para KD-Tree) resultam em travessias muito eficientes, entretanto exigem um tempo de construção muito elevado. Raytracing: Complexidade 2

  18. Raytracing: Comparação de Resultados

  19. Highly Parallel Fast KD-tree Construction for Interactive Ray Tracing of Dynamic Scenes - EUROGRAPHICS 2007 / D. Cohen-Or and P. Slavík Interactive k-D Tree GPU Raytracing (Daniel Reiter Horn, Jeremy Sugerman, Mike Houston, Pat Hanrahan – Stanford University) Construção eficiente de kd-trees para primitivas triangulares (Alessandro Ribeiro da Silva, Wallace Santos Lages - UFMG) Ray Tracing Interactivo: Estrutura de Aceleração - Ademar Gonçalves - Universidade do Minho, Braga, 2009 Referências

More Related