I am using the LandscapeGrassType with three simple grass meshes on UE 4.8.2.
I have placed them on a 63x63 landscape, with each of the three meshes having a density of 18000, which is dense enough to actually look natural like grass.
The problem is that when my game starts, every time the grass takes a minute to appear. I have timed this and it literally takes between 50 to 80 seconds depending upon what else the PC is doing.
The game still runs whilst the grass is not apparent upon the terrain, at full 60 frames per second.
So, this leads to two questions:
Firstly is there a way to speed this up? Using normal foliage placement to place the grass takes far too much memory and rendering time to complete with this amount of grass foliage, so LandscapeGrassType is performant, it just needs to work faster initially.
I can decrease the number of instances of the mesh, say to 5000 which yields a faster more reasonable result but the terrain looks too patchy then and not natural.
Secondly, if i can’t make it work faster, is there a way i can delay the start of the game until the grass is rendered closest to the player?
That’s pretty strange, we haven’t seen that behavior before. Our sample content such as the Kite Demo place grass immediately on level start with a very large number of instances across multiple grass types. What is your Landscape component size? If it’s really really small I could see this taking some time because the placement is done on a per-component basis, but not 50-80 seconds.
Are you able to send us a project which demonstrates the issue?
I will let you know my landscape component size when I’m near my pc. For now I’ve worked around the issue somewhat by finding a compromise between density and time taken to initialise, a density of 7500 seems to take about 10 seconds to appear, which is much more acceptable…
I’m having the same problem. The foliage is built into my landscape material. On startup it takes about a minute to fully appear. It starts from the left hand side of the landscape and gradually starts to fill in from left to right. It’s quite a small landscape.
I am having this issue as well, also in 4.20. This actually impacts a project I’m working on rather drastically since it uses several procedurals which are controlled through blueprints, and the grass maps recompile with ANY change to the material.
I’m now coming back to this project after many years. The problem still persists in 4.23, but i’ve managed to work around it for now, using procedural grass generation instead with the “Grass” node in my landscape terrain material. This loads within a second, but still after the map is considered fully loaded (determined by calling GetAsyncLoadPercentage())
The time taken for the grass to render appears to be a direct function of the amount of foliage to be rendered, as it was back in 4.8.
If anyone has any further diagnosis on this for others that may need the fix, i’m all ears
Has anyone found a legitimate solution to this problem? I’ve been trying to figure this out for weeks. One thing I found when I’m in the editor it’ll load the grass instantly if I switch to the landscape edit mode but obviously that’s not a helpful solution for production.