Quick answer: Godot 4 CanvasModulate dimming the whole scene also dimming Light2D output? Modulate multiplies all canvas colors including lights - light_mode = Replace bypasses.
Day/night via CanvasModulate. At night, even torches dim. Want torches to stay bright.
Set light_mode Replace
Light2D's shader light_mode > Replace. Skips the canvas modulate; bright as configured.
Or use color compensation
Boost Light2D energy proportionally to modulate's dim. The torch stays the same brightness relative to scene.
Layer-based modulate
Apply CanvasModulate to ambient layer only. Lights on a different layer aren't affected.
“CanvasModulate is multiplicative across everything. Lights need to opt out.”
Build the day/night cycle around layers. Ambient layer dims; light layer doesn't. Cleaner architecture.