I am trying to mask out Landscape Grass output where there are pre computed ambient occlusion from Lighmass. Ideally this way grass would avoid bigger objects like building. This would make look nicer and save performance by lowering grass instance number. For some reason grass output is not affected at all by precomputedAOMask. What kind of limitations landscapeGrassType have when output is evaluated?

Thank you.

Hey Jenny Gore,

The Landscape Grass Type assets are procedurally generated using the parameters/settings applied within the asset itself. Since this is being procedurally generated it is fully dynamic, and does not support static lighting. You can see the editor updating your entire scene when you begin painting your landscape with the associated Landscape Layer. Static Lighting is needed to be able to use the PrecomputedAOMask material Input Data node, therefore you cannot use the precomputed ambient occlusion mask with this asset.

I suggested this earlier to a different user, that dynamic lighting within UE4 is quite powerful using the new techniques our engineers have developed and implemented. For example, Ray Traced Distance Field Soft Shadows and Distance Field Ambient occlusion can both be used to up the quality of your scene with minimal impact on performance (when set up properly).

For reference, here is some documentation on the techniques mentioned. We used both of these approaches when creating the Kite Demo project/cinematic.

Ray Traced Distance Field Soft Shadows and Distance Field Ambient Occlusion

Let me know if you have further questions.


It’s not about lighting but I am just trying to mask out generation of landscapegrass foliage under objects.

You could hand paint the foliage, set it as static, and then use a Stationary directional light and use the precomputed AO mask that way.

I don’t want to use PrecomputedAOMask for foliage. I want to use generated ao mask from landscape. I would use it as mask to not spawn any foliage instances where there are high enough amount of ambient occlusion.
Problem is that landscapeGrassType generation material does not have documentation what features are avaible.

Hey Jenny,

We do have a couple of bugs in place that deal with foliage and static lighting. A GitHub pull request was entered so foliage contained the ability to sample the landscape’s lightmap to obtain lighting values. We are actually in the process of discussing its integration as well, and we appreciate you taking the time to clarify and bring this to our attention as well.

If you are working from source, you can take a look at the Pull Request that was entered and integrate the fix yourself. Or you can wait until we have integrated the official feature into a release.

Landscape Grass Type - Pull Request

If you have further questions please let me know.