Grass shading bug.

Hello.
I having really hard time with landscape grass shading. Basically if light conditions are changing even a bit player can notice rectangle chunks of grass really easily. I think this is caused by grass using just single sample of indirect lighting cache or it might be actual bug. This make grass blending with landscape impossible. Would it be possible landscape grass shading to reuse landscape lightmaps?

Thank you.

Link to to original thread. With more pictures.

Hey Jenny,

Since the lines are well defined in each image, and you are using lightmass with your foliage the issue could be that you are exceeding the maximum texture resolution per landscape component.

Lighting Foliage Instances

I found this bit of information at the bottom of our Foliage Instanced Meshes documentation which provides some other useful information in regards to the foliage system.

Foliage Instanced Meshes

Would you also mind telling me how you are applying your foliage to your landscape? i.e. procedurally generated using the (Foliage Type), Procedurally painted using the landscape material (Landscape Grass Type), or simply hand painted using the Foliage mode?

Let me know if you have further questions.

Thank you,

Andrew Hurley

It’s Landscape Grass Type. For standard foliage there are lots of static light settings but for Landscape grass they are missing so I was in belief that it isn’t using baked lightmaps but some other system. I would like to use landscape grass because work flow is so painless but indirect light seems to be bit problem. Could you try to explain or point me to documentation that covers landscape grass and static lighting.

When using the Landscape Grass Type, you are procedurally generating these meshes based on their assigned sampled layer. Since these meshes are instanced static meshes procedurally generated, they do not yet support static lighting.

Your best option, especially when creating large worlds with heavy foliage, is to use fully dynamic lighting in conjunction with Ray Traced Distance field shadows and Cascaded Shadow Maps to increase quality and performance.

We used this technique in our Open World GDC demo. I have provided documentation for Ray Traced Distance Field Soft Shadows, and some information on the Landscape Grass Type.

Using Landscape Grass Type

https://docs.unrealengine.com/latest/INT/Engine/OpenWorldTools/ProceduralFoliage/QuickStart/6/index.html

I have attempted to get your issue to occur on my end, but have not been able to reproduce it thus far. I have set up my test scene to have really dense foliage, but still cannot get the issue to appear.

Perhaps I am not doing something that same as you, but if you have other questions please let me know.

Thank you,

Andrew Hurley

Hello. Thank you for answer. Our project have static light enviroment and we really need good and cheap GI solution. Fully dynamic lighting just isn’t an option. We also need to support wide range of hardware.(including mobile)

I understand that landspace grass don’t use lightmaps because of its procedural/dynamic nature but same is true for all movable objects too. I assume that landscape grass chunk use single sample from volume light cache which causes discontinues on the edges and bad lighting when that chunk is only partially shadowed. Reusing landscape ligthmap for grass maybe could solve this.

I made minimal test project that show the shading problem.
https://dl.dropboxusercontent.com/u/10960490/GrassShadingBug.zip

Hey Jenny,

We really appreciate you taking the time to create a reproducible project. This makes it much easier for us to quickly observe the issue, and try to get a fix/solution in place. I have gone ahead and entered a bug report for the issue (UE-23369). Once it has been addressed by our developers, they will determine the next course of action. When the issue is fixed it will be added to the upcoming release notes of a full engine release or hotfix release.

Let me know if you have further questions.

Thank you,

Andrew Hurley

We have the same problem in out project, which looks the same, but different i think. We are using simple material with parallax occlusion mapping. Maybe this two problems are somehow related, who knows.

https://i.gyazo.com/9e4ca8fdfbc68c516595203a7dd97502.png

Original problem is fixed in 4.12 with “Use Landscape Lightmap” toggle.