Grass Tool Cull Distance Bugged


I’m still on 4.15.1
I just noticed proceduraly distributed meshes using grass tool aren’t being culled properly.
For instance I set the End Cull Distance to 500 which means everything should fade out when 5 meters away, but it doesn’t.
And when I go much far beyond the End Cull Distance suddenly all instances fade out at once.

Repro Steps:

  1. Create a landscape with 256x256 Quads, 2x2 Sections, Overall resolution 4081x4081.
  2. Setup grass tool in landscape material and load any mesh.
  3. Set the distance to something very short like 200 (2 meters) and verify if the meshes cull properly based on distance.

It might be related to that specific landscape size because I didn’t notice it on other landscape sizes.

Hi Maximum,

Can you please post this as a bug report over on the AnswerHub? I can make sure we have folks looking into it from there.

Hi ,

It behaves very inconsistent from one scenario to another. I’m still trying to pin point where it’s coming from to provide better repro steps before posting on AnswerHub.


I can confirm the bug is there and I have created a bug report here: Grass tool culling broken - Programming & Scripting - Unreal Engine Forums

Grass Tool isn’t culling the meshes properly. Meshes happen to appear/disappear in quads instead of appearing/disappearing individually.
This bug might be specific to some specific landscape sizes only i.e in my case 1009x1009.

Repro steps:

  1. Create a landscape with the given settings as in the image.
  2. Setup a material with grass node.
  3. Use a mesh in grass node with high density.
  4. Reduce cull distance to 5000.
  5. Fly forward/backward to see the meshes culling.

Landscape settings:

Please don’t let this one be backlogged like the last few I’ve reported.

I thought the individual culling should be done in the material itself. There’s the node for querying the actual culling distance, you can use that the smoothly mask out the grass.

I’ve noticed it also.

I thought it might just be a misconfiguration only


I’m again having this issue where meshes do fade out fine in lit view but they’re still there for some distance after they are faded out. Can see it in shader complexity view. I’m using per instance fade of course. It seems like meshes stay there for some extra distance after being completely transparent, before being culled, which cause them to look that much red and white, which is hitting performance a lot.

I’d wager it’s just a bug in the complexity viewmode and that the meshes are just drawn in the early Z-pass and then the pixels are discarded from the actual shading process.

This bug is still in the engine as of 4.22.1. It’s really strange as some will cull correctly while others will never cull at all even if out of view

4.22.3, the material Grass output also has this problem. Grass appears in grid, even if distance culling on the foliage is set to closer values.

Bumping again because this issue still persists specifically with Grass Types. And when you mess around with the meshes LOD screen size, they start to appear at different locations in the scene. So it’s some sort of bug/issues with the screen size settings in the mesh, and the cull distance settings in the grass type. 4.22.3

I can’t comment on the culling issue.
The LOD shift might be a pivot issue, like the pivots on the LODs differ for some reason. I had to fix that a few times when I started learning to make my own grass from scratch.

It looks like correct culling distance only works with “sg.ViewDistanceQuality 3” or less. Setting it to 4 draw grass beyond culling distance and fill the whole landscape components

1 Like