summaryrefslogtreecommitdiffstats
path: root/scene/3d/reflection_probe.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scene/3d/reflection_probe.cpp')
-rw-r--r--scene/3d/reflection_probe.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/scene/3d/reflection_probe.cpp b/scene/3d/reflection_probe.cpp
index e533f08861..2e34f6aad0 100644
--- a/scene/3d/reflection_probe.cpp
+++ b/scene/3d/reflection_probe.cpp
@@ -68,8 +68,9 @@ Color ReflectionProbe::get_ambient_color() const {
}
void ReflectionProbe::set_max_distance(float p_distance) {
- max_distance = p_distance;
- RS::get_singleton()->reflection_probe_set_max_distance(probe, p_distance);
+ max_distance = CLAMP(p_distance, 0.0, 262'144.0);
+ // Reflection rendering breaks if distance exceeds 262,144 units (due to floating-point precision with the near plane being 0.01).
+ RS::get_singleton()->reflection_probe_set_max_distance(probe, max_distance);
}
float ReflectionProbe::get_max_distance() const {