You are viewing the course site for a past offering of this course. The current offering may be found here.
Lecture 10: Ray Tracing Acceleration (33)
pixelled

BVH seems to perform better than KD-tree if the scene contains a very large object and lots of small objects, since the large object tends to be contained and tested in more subdivided regions than BVH. In the case where objects are non-uniformly distributed, BVH seems to also perform better because its bounding boxes might only cover a small portion of the scene and thus fewer ray intersections are evaluated.

han20192019

I think the reason why object partition may be better than spatial partition in some situation is that one object will be in only one grid in object partition. This avoids checking the same object several times when checking different grids. But can this also be realized by using the "mailbox" of node in KD-tree? Then will spatial partition with mailbox be better than object partition?

shomilj

In the recording, Angjoo asked a question about using both of these methods simultaneously (e.g. maintaining both a KD-tree & BVH). I'm curious as to when that would potentially help w/ performance (and how it would work in practice) - does anyone have any thoughts on that?

j316chuck

You could divide first by the x-axis median element, then split those two sub rectangles into BVH, then in those individual BVH then split by y-axis, then alternate to splitting by rectangles, etc.

You must be enrolled in the course to comment