In any event, when you have small meshes grass_01_mesh, half the problem is you’re just placing too may meshes. You can make a new mesh out of 10 or 20 of them, and it cuts your render cost massively.
Just drag them in and arrange them randomly, then select them all, right click, and choose ‘merge actors’:
](filedata/fetch?id=1867803&d=1614773584)
You can use the LOD system to make a couple of extra LODs and BOOM, much quicker render… It’s one thing:
](filedata/fetch?id=1867804&d=1614773732)
This is 1.7K, still getting 120fps in editor:
](filedata/fetch?id=1867809&d=1614775513)
This is the mesh ( it’s a bit shoddy, but you get the idea ). You need to use grass 74 mat with it.
Note of caution.
Even with a 1m mesh (you can see the size in world because of the grid in the screenshot) you can get areas of a landscape where the grass is floating.
to fix that you remove the default grass/replace it with smaller meshes in the area.
I use 3 variations. Single bush instance, .5m^2, and 1m^2.
I really wanted to publish some benchmarks but I caught more than 1 job, so it’ll be a while before I can do that.
I did see a benefit (for the first time) by turning on early z pass in someone elses scene.
As far as the testing I have done so far. A fade distance of 50000 and a distribution on grid of 110 meshes with 15k tris each runs around 20fps consistently on a 1080ti.
obviously 15k tris for a single grass mesh is insane - kind of the point of the test. How much geo can you get away with.
Currently running a mesh with 3.5k tris at 65fps 4k. Shadows disabled. No lods.
Using that as as my “maximum” acceptable, it’s all about creating proper LODs to reduce the geometry count at a distance where it isn’t noticeable.
Baking impostors, basically. It just takes some time/dedication.
You might be able to get away with a trick where the player spawns mesh directly beside themselves. That way, you can thin it out significantly, because it always looks like a lot in the distance.
Original screenshot is 2k
Grass distance is 8000, per instance fade starts kicking in at 500
Density is 55. But I need to get performance on 4k So I won’t me changing that.
The mesh itself still needs a little work for the LOD not to pop too much, it’s mostly the color’s fault. I think I might have added to it when I merged the diffuse.
In case compression made the variable sillegible.
Tris count is 2,468,738.50
Draw-calls is 719 (about 500 too many if you ask me :P)
The landscape is 2 components being displayed of the max size (the one you use to build 8km. Without balancing, so LOD0.
current LOD distribution, could be bettered. https://gyazo.com/7594f86b3eaa0dfb0c76a34ff4d8bf19|
The black stop is actually a vectorfield displacement. not sure why it shows up like that in LOD collision view. kinda cool.
This is a manually painted grass patch with around 2x the density. Clip plane set to 0.