Can I have a material read/write the lighting?

Is there a way to read and/or adjust the value of the lighting for a material?
Such as, is there a node I can put in my material that represents the lighting it is receiving? Or perhaps is there a way to adjust this through the scene or the screen or something? (I mean, I’m not really looking to change this per-texture, but rather on every texture in the scene.)

There are a lot of artistic effects I could pull off if I could change the lighting value. I could clamp or step the values to produce a more cartoonish render. I am certainly interested in having the value change according distance from the camera. And it would look really awesome if I could replace the shading with a texture on the screen, to give it a hand-drawn hatch look, like was done in Valkyrie Chronicles.

But I can’t find anything that seems particularly obvious, and I am still pretty new to UE4. So how can I go access this? How can I read and change the lighting value in my scene or on a material?

You need to edit shaders for that kind of control over lighting.
You could try to dimmer basecolor and specular based on your need but then you need to edit every single material.

Okay, but what would I need to build that kind of shader? I don’t see any nodes in the material editor that seem pertinent.

If the lighting and the object are static, you could bake the shadows down to a scalar map and multiply it with the base color.
Basically making the shadow yourself. Then you have absolute control over it.
If you try, dont forget to disable shadows on the model :slight_smile:

At the time I asked everywhere if I could get some kind of lighting information in the material in UE4, the answers were not promising, it would require a deep understating of the engine and programming on a low level. I tried a very rough hack for the purposes of what i was looking for at the time and it worked for me somewhat, I used it to fake SSS back scattering on ears for skin shading. You can find it if you search for it.

Basically they were very low res masks created with Scene captures on a specific dynamic object and fed to the material as alphas to drive other functions, as basic as that. Hope this helps somewhat…

Sigh Not exactly. Well, it lets me know that this would be something out of my league, which honestly is better than simply not knowing. But yeah, a “deep understating of the engine and programming on a low level” is NOT something I posses, and I can’t even follow what you just described you did.

Thanks anyway. At least I now know I can put this idea to rest and move on to something else.

EDIT: Is there some way to just keep the lighting from exceeding certain levels? That may not be the full extend of everything I wanted to accomplish by adjusting the lighting on my materials, but it is a critical thing in the project I am currently investigating. I am just looking for a way to keep materials from getting brighter than their original texel values.