Instanced Static Mesh Foliage - How much does number of Instances affect performance?

I have a question regarding optimization of instanced static mesh foliage.

For example if I were to paint meshes on a landscape:

  • 1000 static mesh foliage, containing one single grass strand
    vs
  • 10 static mesh foliage, containing 100 grass strands each (10x100=1000)

Would this make any difference or is this type of optimization not required for instanced foliage?

Thanks!

To answer my own question I made an experiment, It’s probably not very accurate since it’s just one test-case but for anyone else wondering I’ll post what I found.

I made two Static Mesh Foliage Actors, A & B:
A: Single grass strand, 10 polys
B: 100 Grass strands 1000 polys (10x100)

I placed 1000 K instances of foliage actor A in a rectangular area in a level.
I placed 10 K instances of foliage actor B in a rectangular area in another level.

I set the game resolution to 200% to quickly get a visible FPS drop.

For the scene with foliage actor A I got 35 FPS.
For the scene with foliage actor B I got 38 FPS.

From this limited test-case it seems that the amount of foliage actor instances does not have so much of an impact, more so the contents of the instance.

If someone has more concrete information about this topic feel free to chime in!

grass_single


grass_group_ue
grass_single_ue

1 Like