I'm still new to Blender and I just found out that lights have a nodes option and that there are many things you can do with them.

I am working on a render but I have an issue with an area with oversaturated shadows.
I want to make a light source that desaturates the colours around it and nothing else.

Is it possible to do and does anyone know how to do it?

  • 1
    $\begingroup$ Hi Chociily, I have seen your question. I am unable to understand what you want to achieve here. Can you tell it with a little more detail? $\endgroup$ Commented Feb 21, 2021 at 14:16
  • $\begingroup$ I am basically trying to make a light that turns things more grayscale the closer it is to an object. $\endgroup$
    – Chociily
    Commented Feb 21, 2021 at 14:17
  • $\begingroup$ I don't think that is possible through shader nodes. $\endgroup$ Commented Feb 21, 2021 at 14:19
  • $\begingroup$ @chocilly, do you want the shadows to be less saturated or something else has to be less saturated? $\endgroup$ Commented Feb 21, 2021 at 14:19
  • $\begingroup$ @Aster17 I wanted to make a light that I could put near a shadow (the shadow was a deep oversaturated blue) to make it less saturated. But I just found an alternative way to fix it, by forcing the material to use a certain colour of shadows. Thanks for your time though! $\endgroup$
    – Chociily
    Commented Feb 21, 2021 at 14:23

1 Answer 1


To desaturate objects closer to a light, add 4 nodes to your object's material:

  1. Texture coordinate > Object: target your light
  2. Vector Math > Length - gives lower value for objects closer to that light
  3. Math > Multiply - to control the falloff
  4. Hue/Saturation node, to control the saturation

(You can wrap the setup in a nodegroup and put inside every material)

enter image description here


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .