Add performance hints to the DirectionalLight shadow mode property hint
This also clarifies some parts in the DirectionalLight documentation.
(cherry picked from commit b46756c723
)
This commit is contained in:
parent
9e01a0cd28
commit
61da4882aa
2 changed files with 5 additions and 5 deletions
|
@ -43,19 +43,19 @@
|
||||||
</members>
|
</members>
|
||||||
<constants>
|
<constants>
|
||||||
<constant name="SHADOW_ORTHOGONAL" value="0" enum="ShadowMode">
|
<constant name="SHADOW_ORTHOGONAL" value="0" enum="ShadowMode">
|
||||||
Renders the entire scene's shadow map from an orthogonal point of view. May result in blockier shadows on close objects.
|
Renders the entire scene's shadow map from an orthogonal point of view. This is the fastest directional shadow mode. May result in blurrier shadows on close objects.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="SHADOW_PARALLEL_2_SPLITS" value="1" enum="ShadowMode">
|
<constant name="SHADOW_PARALLEL_2_SPLITS" value="1" enum="ShadowMode">
|
||||||
Splits the view frustum in 2 areas, each with its own shadow map.
|
Splits the view frustum in 2 areas, each with its own shadow map. This shadow mode is a compromise between [constant SHADOW_ORTHOGONAL] and [constant SHADOW_PARALLEL_4_SPLITS] in terms of performance.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="SHADOW_PARALLEL_4_SPLITS" value="2" enum="ShadowMode">
|
<constant name="SHADOW_PARALLEL_4_SPLITS" value="2" enum="ShadowMode">
|
||||||
Splits the view frustum in 4 areas, each with its own shadow map.
|
Splits the view frustum in 4 areas, each with its own shadow map. This is the slowest directional shadow mode.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="SHADOW_DEPTH_RANGE_STABLE" value="0" enum="ShadowDepthRange">
|
<constant name="SHADOW_DEPTH_RANGE_STABLE" value="0" enum="ShadowDepthRange">
|
||||||
Keeps the shadow stable when the camera moves, at the cost of lower effective shadow resolution.
|
Keeps the shadow stable when the camera moves, at the cost of lower effective shadow resolution.
|
||||||
</constant>
|
</constant>
|
||||||
<constant name="SHADOW_DEPTH_RANGE_OPTIMIZED" value="1" enum="ShadowDepthRange">
|
<constant name="SHADOW_DEPTH_RANGE_OPTIMIZED" value="1" enum="ShadowDepthRange">
|
||||||
Tries to achieve maximum shadow resolution. May result in saw effect on shadow edges.
|
Tries to achieve maximum shadow resolution. May result in saw effect on shadow edges. This mode typically works best in games where the camera will often move at high speeds, such as most racing games.
|
||||||
</constant>
|
</constant>
|
||||||
</constants>
|
</constants>
|
||||||
</class>
|
</class>
|
||||||
|
|
|
@ -389,7 +389,7 @@ void DirectionalLight::_bind_methods() {
|
||||||
ClassDB::bind_method(D_METHOD("is_blend_splits_enabled"), &DirectionalLight::is_blend_splits_enabled);
|
ClassDB::bind_method(D_METHOD("is_blend_splits_enabled"), &DirectionalLight::is_blend_splits_enabled);
|
||||||
|
|
||||||
ADD_GROUP("Directional Shadow", "directional_shadow_");
|
ADD_GROUP("Directional Shadow", "directional_shadow_");
|
||||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "directional_shadow_mode", PROPERTY_HINT_ENUM, "Orthogonal,PSSM 2 Splits,PSSM 4 Splits"), "set_shadow_mode", "get_shadow_mode");
|
ADD_PROPERTY(PropertyInfo(Variant::INT, "directional_shadow_mode", PROPERTY_HINT_ENUM, "Orthogonal (Fast),PSSM 2 Splits (Average),PSSM 4 Splits (Slow)"), "set_shadow_mode", "get_shadow_mode");
|
||||||
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_1", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_1_OFFSET);
|
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_1", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_1_OFFSET);
|
||||||
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_2", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_2_OFFSET);
|
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_2", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_2_OFFSET);
|
||||||
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_3", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_3_OFFSET);
|
ADD_PROPERTYI(PropertyInfo(Variant::REAL, "directional_shadow_split_3", PROPERTY_HINT_RANGE, "0,1,0.001"), "set_param", "get_param", PARAM_SHADOW_SPLIT_3_OFFSET);
|
||||||
|
|
Loading…
Reference in a new issue