I wouldn’t mind submitting this for PR, but I’m not sure if Nvidia’s BVH is actually fit for a game. It might be better suited as a tool. Let me explain.
I specifically integrated Nvidia’s BVH for the purpose of implementing SH Lighting that requires a ton of ray casting. To give you a ball park, it requires casting a ray for each sample per vertex. My sample size atm is 400, 1335 verts in the scene, and doing over half million ray casts for just what the author calls “shadowed diffuse transfer” but basically AO. I’m currently implementing the third technique which would require about another 1/4 million ray casts.
So, with so many ray casts required the BVH saves time compared to urho’s octree. There are some cons with BVH: it takes 10 seconds to build BVH (only with 2348 triangles), and I don’t think you can insert/remove polygons at runtime - I load everything up front before building the BVH.
Still interested in seeing it?
Edit: I had a quick look and verified that there are no methods to insert/remove polygons in BVH once it’s built.