From 92fa8fd54a2118e01783db08162f38f6f2856634 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Tue, 4 Jan 2022 20:04:43 +0100 Subject: Document caveats of high attenuation in OmniLight3D and SpotLight3D High attenuation values will negatively impact performance for 2 reasons: - The light won't be culled as often. - The light will cover more pixels, which have to be shaded individually. Therefore, lower attenuation values (with a lower range to compensate) should be preferred whenever possible. --- doc/classes/OmniLight3D.xml | 3 ++- doc/classes/SpotLight3D.xml | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'doc/classes') diff --git a/doc/classes/OmniLight3D.xml b/doc/classes/OmniLight3D.xml index 013ad0cc42..ce286ce51c 100644 --- a/doc/classes/OmniLight3D.xml +++ b/doc/classes/OmniLight3D.xml @@ -11,7 +11,8 @@ - The light's attenuation (drop-off) curve. A number of presets are available in the [b]Inspector[/b] by right-clicking the curve. + The light's attenuation (drop-off) curve. A number of presets are available in the [b]Inspector[/b] by right-clicking the curve. Zero and negative values are allowed but can produce unusual effects. + [b]Note:[/b] Very high [member omni_attenuation] values (typically above 10) can impact performance negatively if the light is made to use a larger [member omni_range] to compensate. This is because culling opportunities will become less common and shading costs will be increased (as the light will cover more pixels on screen while resulting in the same amount of brightness). To improve performance, use the lowest [member omni_attenuation] value possible for the visuals you're trying to achieve. The light's radius. Note that the effectively lit area may appear to be smaller depending on the [member omni_attenuation] in use. No matter the [member omni_attenuation] in use, the light will never reach anything outside this radius. diff --git a/doc/classes/SpotLight3D.xml b/doc/classes/SpotLight3D.xml index b5276d25ea..b3480aede5 100644 --- a/doc/classes/SpotLight3D.xml +++ b/doc/classes/SpotLight3D.xml @@ -16,10 +16,11 @@ The spotlight's angle in degrees. - The spotlight's angular attenuation curve. + The spotlight's [i]angular[/i] attenuation curve. See also [member spot_attenuation]. - The spotlight's light energy attenuation curve. + The spotlight's light energy (drop-off) attenuation curve. A number of presets are available in the [b]Inspector[/b] by right-clicking the curve. Zero and negative values are allowed but can produce unusual effects. See also [member spot_angle_attenuation]. + [b]Note:[/b] Very high [member spot_attenuation] values (typically above 10) can impact performance negatively if the light is made to use a larger [member spot_range] to compensate. This is because culling opportunities will become less common and shading costs will be increased (as the light will cover more pixels on screen while resulting in the same amount of brightness). To improve performance, use the lowest [member spot_attenuation] value possible for the visuals you're trying to achieve. The maximal range that can be reached by the spotlight. Note that the effectively lit area may appear to be smaller depending on the [member spot_attenuation] in use. No matter the [member spot_attenuation] in use, the light will never reach anything outside this range. -- cgit v1.2.3