5. Static Lightmap Baking - QodotPlugin/qodot-plugin GitHub Wiki
This Wiki is outdated and no longer being maintained. Qodot's new documentation can be found here: https://qodotplugin.github.io
Qodot supports Godot's static lighting pipeline via a UV2 unwrap option available in the action menu of QodotMap
:
Lightmap Volumes
In order to bake static lighting for your map in Godot, it must be covered with a set of BakedLightmap volumes. How many are necessary will depend on the side of your map and number of lights- if you try to bake too much at once the editor will crash, so larger maps will need to be split into multiple volumes.
There are some limitations to be mindful of when doing this:
-
Each mesh can only be affected by a single lightmap volume
- Meshes overlapping multiple BakedLightmap volumes will draw from whichever one is lower in the scene tree
-
If using BakedLightmap volumes, each will need to have its
Image Path
property set to a different folder- Lightmaps are saved alongside the scene file by default, which causes overwrites
-
The editor will only update multiple lightmap volumes on scene reload
- Be sure to save and reload your scene after baking multiple volumes in order to see correct results
Lighting Behaviours
-
Energy vs Indirect Energy
- Energy is used for dynamic lighting
- Energy and Indirect energy both contribute to static lighting if
Bake Mode
is set toAll
-
Light Settings
- Bake Indirect is used to supplement dynamic direct lighting with baked indirect lighting
- Results in a hybrid baked + dynamic light
- Bake All is used to bake both direct and indirect lighting
- Dynamic lights set to Bake All must have all their render layers disabled for correct results
- Bake Indirect is used to supplement dynamic direct lighting with baked indirect lighting
-
ConeTrace vs RayTrace
- ConeTrace
- More accurate to dynamic lighting system
- Similar metrics, so light settings are easily transferable
- Shorter bake times on account of a simpler algorithm
- Global illumination / sky lighting
- Activated by setting
Propagation
to 1 - Controlled by baked directional lights
- Activated by setting
- RayTrace
- Better quality overall
- More accurate to real-world light behavior
- Metrics are incompatible with dynamic lighting system
- Requires more art time to refine
- Some unexpected behavior with certain light types
- SpotLight uses both Energy and Indirect energy for baked lighting in RayTrace mode
- ConeTrace
-
Using a Node as the parent of a BakedLightmap will break it out of the scene hierarchy
- This allows the user to group meshes and lights together for baking in isolation
General Tips
-
Godot's lightmap process will crash if too many lights or meshes are used
- Grouping rooms into separate entities rather than a single worldspawn is recommended for baking lights on larger maps
- Be sure to save often to avoid loss of work
-
Larger maps should be saved as .scn instead of .tscn in order to minimize saving and loading overhead