Problem with directional light: It's not lighting up my scene?!

Godot Version

v4.2.1.stable.mono.official [b09f793f5]


When I create a directional light in my project, the light it casts is not detected by the camera (neither in-game camera nor 3D editor camera) whenever the direction of the light is either straight toward or straight away from the camera. As the direction of the light approaches those values the light dims until it goes to black. As such, I cannot have proper environmental light.

A directional light casts parallel rays, so if the surface and the rays are parallel, there is no way light can bounce on the surface. If you want ambient diffuse light, you can create a WorldEnvironment that will give you a more natural global illumination effect.

However, i have a sphere in the same environment. Shouldn’t that be reflecting any of the rays towards the camera? Plus, I also stated that the issue is also present when the directional light is pointing straight at you.

The surface and the rays are not parallel, it is just when the directional light is rotated towards you and away from you. I will provide another image for clarification.

well… if the camera looks directly at the light and the light points directly at the camera, the camera is in the shadow of almost anything in the light that could possibly reflect towards it.
You’re thinking of the directional light as a sun, but it is not quite that. A directional light does not refract in air. The “problem” you are seeing is a mere artifact of the correct math used to make the directional light. You need a more complex scene to use a directional light.

Hopefully more images help clarify what i’m saying. for the context of the images, the directional light is rotated just a bit upwards, not pointing straight down. If i point the directional light straight at the ground, then it is not possible to see any light, no matter where you are in the scene.

In this image, the light is pointed slightly upward from the ground, and towards the editor camera

in this image, the light is pointed to the left of the scene.

In this image, the light has been rotated on its y axis by 180 degrees from that 3rd image i sent.

oh, you have “negative” checked! that makes the light remove energy instead of add it!