Closed tigrazone closed 3 years ago
The QBVH (4-way tree) and CWBVH (8-way tree) are both constructed by first building a 2-way tree (using full SAH, no binning yet) and then collapsing it (also based on SAH). The time it takes to collapse is negligable compared to the first building step.
On my laptop (with a Geforce 845m) the frame times for Sponza are as follows: | BVH Type | Time |
---|---|---|
BVH | 416 ms | |
SBVH | 402 ms | |
QBVH | 210 ms | |
CWBVH | 92 ms |
So each BVH is about twice as fast to traverse as the previous.
Is your CWBVH build code is good without enable_bvh_optimization? or for CWBVH building enable_bvh_optimization is needed? optimization took too much time
No BVH optimization is not strictly needed for good performance, but it can be used to squeeze out the last bit of performance at the cost of more preprocessing time. I guess I should actually disable it by default to get faster startup time.
One more question. Did CWBVH faster then sbvh in traversing?
The SBVH is also a 2-way BVH, so the CWBVH is significantly faster. I've updated my previous comment to include SBVH in the table, as you can see its only slightly faster than standard SAH BVH
Thank you for answers
Is qbvh fast in traverse? Is qbvh builder use sah and bins on building stage? Is qbvh faster then others? Which bvh is faster in traverse and building and quality?