I’m wondering if it is possible to control how lighting is rendered in a material or a whole scene.
Basically, I’d like to be able to intercept the value of the lighting (after it has been calculated) before it is applied to a material so that I can manipulate that data to create special effects.
Here’s a couple examples of what I mean.
One, I’d like to be able to re-create the creepy lighting effect from old sector-based games where the lighting becomes modified by distance. It’s not the same as a fog effect because it varies by the object’s given distance; bright objects remain bright from far away and dark objects become visible when they are close to the player.
If I could inject a formula into the rendering process so that I could manipulate the rendered lighting values each frame, I would love to play around with the formula to see what other effect I could pull off.
Another lighting effect I have been interested in (although for a different project) is to recreate the shading effect in Valkyria Chronicles. To make the game look hand-drawn, the shadows never actually darken any materials but where there “are” shadows a hatch texture is drawn (in screen space.)
This is a more complicated effect, I know, but it still involves intercepting the lighting data. This time it keeps the lighting from actually drawing on a material, and then takes the lighting value to determine where on the screen to draw the texture.
Is it possible to adjust how the lighting works on an object/material/whole scene in any of the ways I have described?