three-mesh-bvh
three-mesh-bvh copied to clipboard
Shader Performance Improvement Options
- Require that a BVH have at most 1 triangle per bound which removes an internal for loop
- Fix build logic so the BVH is arbitrarily split into individual triangles until the leaves if no split is found.
- Improved triangle intersect functions
- Improve bounds intersect functions
- Improved bounds traversal logic
- #346
- #332
- https://www.nvidia.com/docs/IO/76976/HPG2009-Trace-Efficiency.pdf
- https://research.nvidia.com/publication/2017-07_Efficient-Incoherent-Ray
Other
- ~Unpack vertex buffers so no index buffer sample is needed?~
- too complicated, hopefully unnecessary
"QBVH" seems to be a popular choice for GPU-based path tracers.
- https://hb3p8.github.io/papers/QBVH_gtc_2016.pdf
- https://www.uni-ulm.de/fileadmin/website_uni_ulm/iui.inst.100/institut/Papers/QBVH.pdf