Do we have to implement these data structures in A3?
oadrian96
It seems to like we should care about keeping this BVH as balanced as possible, right? Some leaf assignments could make it such that the loop up is no better than iterating over all primitives.
keenan
@Arthas007 Yep! You'll do some BVH implementation in A3.
keenan
@oadrian96 There are a lot of heuristics for what makes a "good" BVH (such as the surface area heuristic), but typically just keeping the tree balanced (in terms of number of nodes) isn't going to be a great one. Objects in a scene can have a very heterogeneous spatial distribution, which is probably not captured too well by a balanced tree.
bepis
I like the idea of this data structure but I'm wondering how we construct these bounding boxes.
Edit: nevermind, this is addressed later in the lecture
rlpo
Is there an industry standard for how to construct these data structures, or is this still an open question?
clam
With the surface area heuristic and other properties of a BVH, are there any guarantees (even probablistic or amortized) as to asymptotic speedup that can be made, or is everything mostly just an in-practice heuristic optimization?
keenan
@rlpo It really depends on the use case. Even for the same renderer, different types of scenes will exhibit different performance for different BVH constructions. But yeah, there are some standard things people do like the surface area heuristic.
Do we have to implement these data structures in A3?
It seems to like we should care about keeping this BVH as balanced as possible, right? Some leaf assignments could make it such that the loop up is no better than iterating over all primitives.
@Arthas007 Yep! You'll do some BVH implementation in A3.
@oadrian96 There are a lot of heuristics for what makes a "good" BVH (such as the surface area heuristic), but typically just keeping the tree balanced (in terms of number of nodes) isn't going to be a great one. Objects in a scene can have a very heterogeneous spatial distribution, which is probably not captured too well by a balanced tree.
I like the idea of this data structure but I'm wondering how we construct these bounding boxes. Edit: nevermind, this is addressed later in the lecture
Is there an industry standard for how to construct these data structures, or is this still an open question?
With the surface area heuristic and other properties of a BVH, are there any guarantees (even probablistic or amortized) as to asymptotic speedup that can be made, or is everything mostly just an in-practice heuristic optimization?
@rlpo It really depends on the use case. Even for the same renderer, different types of scenes will exhibit different performance for different BVH constructions. But yeah, there are some standard things people do like the surface area heuristic.