A college and I have been stress testing babylon where we need to draw several hundred thousand meshes. We have found that the partial system works best for us just because it does not make part of the frustrum culling. It feels like a bit of a cheat, but evaluating so many items is just tooooo expensive.
What I am hoping we can do, is to use octrees so that you can eliminate blocks of elements not visible.
How can I cheapen the evaluate active meshes using octrees or something like that.
There is certainly a lot of interesting stuff in there.
We used instances but we found that the CPU was being hammered.
By changing that to use the particle system instead we drastically reduced the CPU time as they don’t get checked for culling.
It seems that over drawing in some cases is faster because of the reduced cpu cost.
I was hoping that there would be a way for us to use octrees as part of the culling operations so that we can find a sweet spot between low cpu culling cost and over drawing.
On that page, there seems to be culling strategies but it’s per mesh by the looks of it.
What would have been nice is something like
scene.cullingStrategy = "octree"