Godot Version
4.5.1 stable
Question
I am making a day/night cycle in my game. I have a certain node I do not want to be affected by the Canvas Modulate; wondering what is the best way to achieve this.
I found a similar topic from a year ago that suggested a shader on the sprite node, but I have no experience in that.
This is the shader if anyone wants to expand/explain.
shader_type canvas_item;
void fragment()
{
COLOR = texture(TEXTURE, UV);
}
is this your question ?
I CANT ADD SHADERS TO NODES
if yes , you just need to go to material section in the inspector of the node ; than add an shader material ; add a shader ; and a shader editor will apear on the bottom .
delete the shader codes there , and paste here the shader that you have found .
My question is how to make a node not be affected by canvas modulate.
Not full context, be helpful if you say what you trying to achieve and how looks your scene build.
Short answer: set it to “ffffff”
it doesnt work in godot 4.6
I did say what I am trying to achieve…
I do not want the night cycle to affect one of my characters.
If it is not possible, then I can live without it.
you can add a point light to your node , but that point light should be compelety match to your node and have an opposite color to your canvas modulate
I did not want to go that route. Thought there may be a better way to execute what I wanted.
I can try, thanks for the suggestion. 
shader_type canvas_item;
uniform vec4 my_modulate: source_color;
void vertex() {
COLOR = my_modulate;
}
void fragment() {
vec4 texture_p = texture(TEXTURE, UV);
COLOR.rgb = texture_p.rgb;
COLOR.a = my_modulate.a * texture_p.a;
}
look does this shader work or not ?
Put the nodes you don’t want affected onto a canvas layer.