Interact with shadow zones

Hello everyone,
what I’m trying to do is to have a material that can behave differently where there is shadow and where is not.
Any idea?


There is no easy way to know if specific part of material is shadowed or not, because all the shadowing is done after all objects had been drawn.

There can be workarounds for specific cases, like for 1 directional light, for example. You could setup SceneCapture node in a such way, that it would render scene depth from light’s point of view. Then in material that you want to react to the shadow, you would need to transform pixel’s position into light’s coordinate system and check if it is visible to light or not.Same principle can be applied to spotlight.

That is pretty advanced though, and may sound confusing. You might seek some other way to solve this task, for example doing object to light visibility trace checks using blueprints or even something else.