Static BVH vs Dynamic BVH?

I don’t understand BVH…can someone help explain? I read a little bit on wikipedia and the Blender wiki… Is Bounding Volume Hierarchy simplifying meshes into primitive shapes for rendering calculations?

Also in the Camera Performance menu, what is the difference between a viewport setting of Static BVH vs Dynamic BVH?

thanks for any insight!

The BVH is created from your scene every frame. So if your scene does not change from frame to frame (i.e. no objects are animated) then your scene would be considered static and could fall into the category of a speed up for the next frame because Blender would not have to revise/recalculate the BVH. It could use the same one. If your scene has animation then your BVH would be Dynamic and could not re-use the BVH from the previous frame.

For example: If you are staying on the same frame and just issuing multiple renders to tweak materials you don’t really want to wait for Blender to kick out the same BVH every time, especially if you have a complex scene. That is my understanding of how it is used.

thank you!

Not exactly right. You can use either Static or Dynamic for any type of scene. Static takes up substantially less memory and takes less time to build, and Dynamic uses a different data structure that will only update and rebuild the BVH for objects that have moved since the last frame. Static rebuilds for all objects. In my opinion, Dynamic should be optimized and the option should be removed from the user. There’s really no reason to have to worry about such a setting.