-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Measuring BVH Quality #2
Comments
There's the SAH, of course. Computing it is relatively easy (see https://github.com/madmann91/bvh/blob/master/include/bvh/parallel_reinsertion_optimization.hpp#L34). That's what the 'ParallelReinsertionOptimization' class is using to optimize the tree. Keep in mind that even though that's the 'best' measure that can be used during construction, and even though it correlates really well to performance, it's not an absolute measure of quality. There are trees with lower SAH than others that will perfom better in practice. There's this very informative paper if you are interested in quality metrics: https://research.nvidia.com/publication/quality-metrics-bounding-volume-hierarchies. |
I'll have to give that article a read then. I don't really know what the effort is required to do this, so if it's a bit too much than I'd rather just stick with traversal time as the best metric. |
I have added a |
That definitely does! Thank you so much! |
Just out of curiosity, is there any metrics that this library can calculate that indicate the quality of the generated BVHs aside from the traversal performance? Perhaps like the accumulative amount of empty space between parent and sub nodes? I don't think I've seen this measured before in other projects, but it seems like it would be a useful metric for comparisons between algorithms.
The text was updated successfully, but these errors were encountered: