How to building sah bvh ?

Started by
3 comments, last by VadimZabolotnov 10 years, 2 months ago
How to building sah bvh ?

How to find bounding volumes ?

How to find first intersection node when sah bvh is build (when ray trace)?
Advertisement
See my thesis http://hgpu.org/?p=5678 for info on SAH BVH construction and traversal. Some of the papers I used:

[GPSS07] Johannes Gunther, Stefan Popov, Hans-Peter Seidel, and Philipp Slusallek. Realtime ray tracing on GPU with BVH-based packet traversal. In RT '07: Proceedings of the 2007 IEEE Symposium on Interactive Ray Tracing, pages 113{118, Washington, DC, USA, 2007. IEEE Computer Society.

[LGS+ 09] Christian Lauterbach, Michael Garland, Shubhabrata Sengupta, David Luebke, and Dinesh Manocha. Fast BVH construction on GPUs. Comput. Graph. Forum, 28(2):375{384, 2009

[LYTM06] C. Lauterbach, S.-E. Yoon, D. Tuft, and D. Manocha. RT-DEFORM: Interactive ray tracing of dynamic scenes using BVHs. Symposium on Interactive Ray Tracing, 0:39{46, 2006.

[MB90] David J. MacDonald and Kellogg S. Booth. Heuristics for ray tracing using space subdivision. Vis. Comput., 6(3):153{166, 1990.

[Wal07] Ingo Wald. On fast construction of SAH-based bounding volume hierarchies. In Proceedings of the 2007 IEEE/EG Symposium on Interactive Ray Tracing. IEEE, pages 33{40, 2007.

[WK06] Carsten Wächter and Alexander Keller. Instant ray tracing: The bounding interval hierarchy. In Rendering Techniques 2006 { Proceedings of the 17th Eurographics Symposium on Rendering, pages 139{149, 2006.

The basic algorithm is really similar to the one I posted to the octree thread (top-down). Bounding volumes could be AABBs in your case (find min/max in each direction over a set of vertices/triangles/other aabbs). Nice, basic, yet short info is also on Wikipedia http://en.wikipedia.org/wiki/Bounding_volume_hierarchy
During intersection you always start with the root node, exactly the same process as with octrees, kdtrees or anything else (if you have stack).
How to building sah bvh on gpgpu? can you explain the base concepts for gpgpu?

I think he already replied you with that information...

From what I know, Lauterbach's LBVH construction was implemented on GPU and shown some good results (although compared to F.e. split-bvh they were a lot worse), there is also hierarchical LBVH - aka HLBVH, that was also built on GPU and this one yields better results than standard LBVH.

Google some HLBVH papers, there are more of them.wink.png

My current blog on programming, linux and stuff - http://gameprogrammerdiary.blogspot.com

I think he already replied you with that information...

From what I know, Lauterbach's LBVH construction was implemented on GPU and shown some good results (although compared to F.e. split-bvh they were a lot worse), there is also hierarchical LBVH - aka HLBVH, that was also built on GPU and this one yields better results than standard LBVH.

Google some HLBVH papers, there are more of them.wink.png

I also read that building LBVH for gpgpu is not good idea. And I read that split-bvh building need bins, but I can't understand what is it bins ?

This topic is closed to new replies.

Advertisement