Sfoglia il codice sorgente

Merge pull request #82415 from Calinou/reflectionprobe-fix-high-max-distance-rendering-2

Clamp ReflectionProbe Max Distance to 262,144 to fix rendering issues
Rémi Verschelde 1 anno fa
parent
commit
79e9e201e8
1 ha cambiato i file con 3 aggiunte e 2 eliminazioni
  1. 3 2
      scene/3d/reflection_probe.cpp

+ 3 - 2
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 {