-
Fps drop is normal. You are rendering a lot of stuff. check your draw-calls. (a 1080ti at 4k can barely manage 60FPS at epic settings on a finished and optimized game).
-
exact poly, light tris count, small number of meshes. Using the Grass Node (ei, not the foliage tool).
-
If it’s NOT all blue, you are doing it wrong.
This is the light-map density view - useful to tell if the meshes are being randomly scaled by the grass settings (why the colors are different).
](filedata/fetch?id=1770676&d=1591206373)
What eats up most FPS is your landscape. Make sure the material you are using is in the green
](filedata/fetch?id=1770677&d=1591206519)
In .25 mesh HLOD coloration crashes the editor. consider using .24 to visualize the LOD ranges?
The most important thing to worry about is the composition of your grass mesh.
I’m using a clump of 1m x 1m.
A clump of taller stems of .5m x .5m
and variations of the same with different colors.
100 density on 1mx1m and 50 density on .5mx.5m (instances per 10m x 10m) is more then enough to give enough “body” to the grass.
Then you have variations. 10 density each, for “dead” grass versions in which the colors change.
Perhaps, the most important setting is that Dynamic Shadows must be disabled on the grass meshes - the shadowing is faked within the material.
It doesn’t necessarily need to be, but at high resolutions it eats processing power.
Another important optimization for the grass is texture packing. The least amount of samples = the best performance. AO, Roughness, and Specularity should be packed within the same image - and you still have the Alpha channel free for something else if you wanted to.
Personally I pack the alpha of the grass inside the diffuse. You may choose to set it inside the packed image instead for consistency…
The real fight is to create something that allows for the grass to disappear but you not notice that it is gone.
This is mostly done by matching the landscape color to the grass color, and using the PerInstanceFade amount in the grass material.
You pipe this in into the Opacity mask - under no circumstance should your grass be set to “Transparent” that really would eat up performance.
The value of B is the alpha mask of the grass mesh - or transparency.
To match the material to the grass, the best way I have found is to de saturate the materials, and lerp in the replacement color (or you could avoid de-saturate and use the green pin since usually grass is green…)
Hooking that value up to a MPC also allows you to create a change of season which is also nice to have for no extra cost.