Post on 10-Jan-2016
description
Raytracing acelerado: Bounding Interval Hierarchy
Luciano Monteiro dos Santos
Bounding Interval Hierarchy
Estrutura de particionamento espacial; Abordagem hibrida entre árvores de partição
(BSP, Kd-Trees) e Hierarquias de Volumes (Bounding Volume Hierarchy); Permite construção e atualização rápidas, o que
possibilita a utilização em cenas dinâmicas; Desempenho em aceleração comparável com as kd-
trees.
Vantagens e Desvantagens
Vantagem Sem subdivisão de elementos
O tamanho da arvore na memória é deterministico. A profundidade de busca tende a ser menor.
Estrutura semelhante à kd-tree permite busca sem pilha
Desvantagem Sub-arvores se sobrepôem parcialmente
Não é possível retornar logo após encontrar a primeira intersecção – é necessário testar os outros nós na pilha.
Construção
Escolhe-se um plano de particionamento a partir de uma dada heurística; Comumente, divide-se a maior dimensão do volume
ao meio. Classifica-se os objetos entre os filhos da
esquerda e da direita, de acordo com o lado no qual cada objeto mais pertence;
Ajusta-se os planos limites para conter todos os objetos;
Construção
Construção
Construção
Pesquisa
Semelhante à kd-tree. Deve-se testar quatro casos distintos:O raio atravessa apenas o filho da esquerda;O raio atravessa apenas o filho da direita;O raio atravessa ambos os filhos;O raio não atravessa nenhum filho (não
possível numa kd-tree normal);
Exemplo: Arauna
Engine experimental para jogos com Ray-tracing em tempo real;
Utiliza Kd-trees para elementos estáticos e BIHs para elementos dinâmicos;
Exemplo: Arauna
Aplicação: Bunny.rt4
Original BIH
2.500s 43s
Referências
Instant Ray Tracing: The Bounding Interval Hierarchy. Carsten Wächter and Alexander Keller. Eurographics Symposium on Rendering (2006)
Arauna Real Time Raytrace Engine: http://igad.nhtv.nl/~bikker/