So, I’ve been building a fairly huge terrain, and have populated it with tons of larger stuff.
I’ve been experimenting with a decent way of making small clutter work and figured I should ask the community about your experiences.
Since my map is fairly large (around 13 square km), adding small clutter would quickly add up to millions of items and I’m worried to go with the wrong approach.
At the moment I’ve populated it down to grass, but my grass meshes are fairly large, and very lowpoly.
The problem I’m having is that areas without ground covering grass is that the landscape** looks very flat** despite good normal maps on each layer.
Therefore I should go one step lower and start covering with smaller rocks, twigs and stuff to make the ground look more realistic.
I’ve been experimenting with different approaches back when I worked on this in UDK and never really figured out the best way to go.
What would you say would be the best way of doing it? I want as cluttered ground as possible with the least amount of **performance **hit (obviously).
Back in UDK the foliage mode used to get slow as hell when too much meshes had been added so I had to split my world up into tiny pieces to get more than one instanced foliage actor and then stitch them back together. But this doesn’t seem to be an issue in UE4 (I’ve placed around 600 000 trees without any lag what so ever in the foliage tool so I’m positive.
So I have a few different ideas on how to add clutter:
1.
Either just make **individual **small, low poly rocks and stuff and then paint with foliage mode, or make meshes that contains a cluster of stuff that then can be painted with foliage mode.
Then set them all to very low culling distance and make big foliage clusters with tons of meshes that are instances of each other.
Would this work for covering a few square KM of landscape? And is there any benefit of making meshes with more than one tiny rock vs just painting **individual **ones? Since they’re instances of each other I’m not sure since there shouldn’t have to be more **drawcalls **as long as they’re clustered in foliage mode correctly, right?. They’ll of course have LOD levels that switch fairly close to the player.
Also, exactly what does the instancing of foliage do? Does 5 trees placed that are all instances of the first one in the cluster equals the same performance hit the first one causes? I’m guessing it doesn’t since they all receive light and cast shadows differently but would like to know how big of a difference it does?
2.
A second approach would be adding **tesselation **to a few layers in the landscape material, I’ve tried this with pretty good looking results but obviously fairly big performance hit. Would this work as long as I fade out the tesselation so it’s only used pretty close to the character?
3.
Back in **UDK **myleslambert, CobaltUDK, evernewjoy and a few others put together a system that spawns smaller clutter in runtime here: Runtime Foliage - Epic Games Forums
Would something like that be a better approach and, maybe build it using blueprints? Any ideas on how this could be achieved?
Playing Arma 3, I’ve noticed that they have ground clutter that seems to be part of the terrain, it doesn’t look like individual meshes, more like tesselation but they have collision so I’m guessing it’s actually part of the ground geometry? or how do they do it?
If it’s part of landscape(terrain in their case) geometry It won’t be doable for me as my 4033 landscape resolution isn’t enough for such small details.
Thanks in advance!