I have an interior scene with some windows. The light is from an OmniLight near the ceiling, default environmental light from outside, and a desk lamp with emission. Without baking light, the scene looks like this:
Consistent with the documentation for emission, the desk lamp is not affecting the surrounding objects. I want to bake the light to see the lamp's effect and to support low end hardware.
I followed the baked lightmaps tutorial and set the BakedLightmap's extents to encompass the entire room. After baking, the scene looks like this:
I can see the lamp's light, as expected, but now everything is too dark. It is unclear to me from Godot's documentation if scenes include indirect light without baking. I have tried this with the OmniLight set to bake "all" and only indirect light.
What am I missing here?
UPDATE 10 April 2021:
The problem seems to be that baking environmental light isn't working as expected. I was using Godot 3.2.3; now I'm using 3.3rc8. That gives the BakedLightmap options for environmental light, but the problem remains.
I began troubleshooting by shuttering all the light sources as follows:
- Hid the OmniLight, and set its "Bake Model" property to "disabled"
- Unchecked "use in baked light" for the desk lamp
- Set the default environment's background and ambient energy to 0
- Set the BakedLightmap's "environment mode" to "Disabled", verified "Min Light" is set to pure black, and cleared the "Light Data"
When I run the game, I get exactly what I expect--a black screen. If I bake light under these conditions, I continue to get a black screen, as expected.
Here's where things get screwy. When I set the BakedLightmap's "environment mode" to "Scene"--with the environment still without any light--I get dim illumination.