We see a lot of places where we need to choose the right strategy for the job. Often, tasks don't exactly match data structures or algorithms. Are there deterministic strategies/rules for choosing which data structures/combinations to use in this case?
What does it look like to take combinations of spatial acceleration structures? When might such combinations be used?
Which algorithms are implemented on Nvidia RTX cards?
(primitive)BVH: every primitive in only one box, good for animation, complexity doesnt grow with dimension
spatial(kd tree): early exit but can intersect at the wrong zone
both hard to construct, but afterwards is faster
non-adaptive(uniform grid): no need to build up, performance is good only when primitives are well distributed
add on: can combine different techniques in a picture
Why is it troublesome for K-D trees to intersect many times
Can programs dynamically adjust which combinations of strategies (above) to use depending on the scene complexity for particular regions?
Are there good heuristics for choosing which strategies to use and how to combine them? For example, if half of the scene is uniform and the other half is not, it seems like you might want to do use non-adaptive and adaptive strategies for the two different halves.
Do some structures take advantage of or have special support in the hardware?