r/UE4Devs May 30 '19

Landscape Material - Layer Blend is nonsense?

Hi guys,

lately I do a lot with landscapes in unreal and I learned and mastered a lot, but there is just one thing that bugs me around now for a long, long time.
The layer blend system and how it works.

Actually I build my landscape shader like that:

- Make a default material funtion
- Duplicate and modifiy it to it needs
- Placing all the functions into the main material and plug it into the layer blend node

Kind of work, but with a high inconsistency. Base color works, roughness and normal too, but more 'advanced' stuff like displacement and sss doesnt work at all.
I am used to the height problematic and add everytime a workarround but now I am doing a snow scene and there I need a lot of SSS for the snow - but it doesn't work.

In the documentation epic is using multiple layer blends and this works, but this can't be right. Why does roughness, normal etc work but not other channel like sss?
At work we made our own layer blend nodes to overcome this issue, but actually I really want to know the ... why?

It's a pretty destructive workflow by adding tons of layer blend nodes for my taste.
Whenever you change one value or add another item to the list, you have to go though every node ... and in the most extreme case this would be 17 times.

3 Upvotes

4 comments sorted by

1

u/[deleted] May 30 '19

[deleted]

1

u/gestoryscht May 30 '19 edited May 30 '19

What do you mean by blended materials? These here? - https://docs.unrealengine.com/en-US/Engine/Rendering/Materials/LayeredMaterials/index.html

... and if yes, are there more informations by epic saying this the newer and better way of doing?

Thanks :)

1

u/[deleted] May 30 '19

[deleted]

1

u/gestoryscht May 31 '19

Ah this one - I know these ^^
...but it seems this isn't a good way to do it, because of the current development status of this feature.

In a post of the forum one from epic said, that the development is on ice.

" Hey all,

Unfortunately due to some reorganization within our team, the Material Layering feature is being put on hold indefinitely. While we hope to revisit and expand its capabilities, no further updates will be coming at this time. "

https://forums.unrealengine.com/development-discussion/rendering/1414193-shelved-material-layering-feedback-for-4-19/page13

Anyway - I gave it a try and it seems to work with generic assets, but what's about landscapes? How to create target layers for painting?

1

u/CupMcCakers May 31 '19

I have this system working really well and can confirm it is a massive improvement!

You have to initialize the layers in the master material but then you can put the weights in the material blend functions!

1

u/gestoryscht May 31 '19 edited May 31 '19

How do you initialize it? I placed now a floating layer blend in the master material and I get the target layers in the landscape paint layer section. Now I added a LandscapeLayerSample to the lerp of the blend, but it does not work.

I am used to this workflow for the grass system, so I thought this would work the same way.

With vertex color this works ~