Many Static Mesh Components VS one mesh: Performance

I would like to generate some of my objects procedurally via construction script. Is having around ~10 Static Mesh Components more resources-hungry than having one single mesh composed in 3d app? If so, is it noticeable?
I guess that all Static Mesh Components inside blueprint are treated as one object (they’re all within one blueprint == one actor), so it should not be a problem, but am I right?

1 Like

You can use Instanced Static Meshes to display many versions of the same mesh, with an incredibly small performance footprint. Creating many individual Static Meshes will affect your performance significantly, depending on the complexity and number.

Thanks, I’ll use Instanced Static Mesh Components then!

The tradeoff with instances, is that if you see one instance, all instances in the group render and at the same LOD. So you wouldn’t want to use too much instancing with your highest polygon assets, and you should try to keep instances fairly close together if possible. Also lots of small thing like rock pebble deco is perfect as long as the polycount isn’t too crazy. Can go crazy with the numbers. Just make sure meshes also have LODs.

The Hierarchical Instanced Static Mesh Components speak to this limitation, no?

Thanks for the tips, I’'ll keep that in mind. I use them exactly for things like random placed/scaled rock pebbles, dead branches/trunks, procedural plant variations, etc, so instances are close together.