BVH building question (theoretical concept solution)

Hi, community!

How can I optimize animation rendering? My scene is pretty simple – without complex shaders, lighting, shadows etc… But I have a lot of objects in scene – simple 1 face planes and complex camera moving. It renders pretty fast but I waste too many seconds per frame for “Synchronizing Objects”, “Updating Objects, lights, mesh, shaders, etc…” and “BUILDING BVH”.

I wonder if I can do this process like: Hit “Render Animation” --> “Synchronizing Objects, Lights, mesh… for ALL frames” -->“Prebuilding BVH for ALL frames” --> “Saving Result to temp file” --> than just rendering frame by frame with GPU without building all that stuff every time.

Maybe solution already exist by addon or script? Or it is impossible?

Blender User

Id be eager to know too. the hole building BHV (and also opencl kernel compile) is an unwelcomed hiccup these days.

It depends, if I understand all that BHV building thing correctly , if you’re animating objects in the scene you’ll need to rebuild it every frame.
If it’s only the camera that is moving then the bvh can stay the same.

There is a custom build that allow you to do that :

Look at the third video in the first post, persistent data, that’s it !

You may need to compile blender to use that patch, or use an older custom build (2.77 /2.78) that you may find in that thread…

Thanks. It looks like that what I need.
I checked those links, but they are dead…
I can’t build it by myself, I don’t have enough knowledge.