Add a property to control the bounce indirect energy in BakedLightmap #50827
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
3.x
version of #51705.Higher values will make indirect lighting brighter. A value of
1.0
represents physically accurate behavior, but higher values can be used to make indirect lighting propagate more visibly when using a low number of bounces.This can be used to speed up bake times by lowering the number of bounces then increasing the bounce indirect energy. (This will be useful for godotengine/godot-proposals#2029.) Unlike BakedLightmapData's
energy
property, this property does not affect direct lighting emitted by light nodes, emissive materials and the environment.I tested this PR with lights baked in Indirect mode and lights baked in All mode. I also tested emissive materials and environment lighting – everything works as expected.
This can likely be implemented in
master
's GPU lightmapper too.Preview
3 bounces, indirect energy 1.0
1 bounce, indirect energy 1.0
Darker compared to what we had before.
1 bounce, indirect energy 3.0
Compensates for the fewer amount of bounces.
3 bounces, indirect energy 16.0
Can be used for debugging purposes or artistic effects (perhaps with a less extreme value).