Browse Source

light: ensure directional lights are sorted to be always first

Kirill Vainer 10 năm trước cách đây
mục cha
commit
31383778d9

+ 2 - 0
jme3-core/src/main/java/com/jme3/light/AmbientLight.java

@@ -69,6 +69,8 @@ public class AmbientLight extends Light {
     
     @Override
     public void computeLastDistance(Spatial owner) {
+        // ambient lights must always be before directional lights.
+        lastDistance = -2;
     }
 
     @Override

+ 3 - 1
jme3-core/src/main/java/com/jme3/light/DirectionalLight.java

@@ -80,7 +80,9 @@ public class DirectionalLight extends Light {
 
     @Override
     public void computeLastDistance(Spatial owner) {
-        lastDistance = 0; // directional lights are always closest to their owner
+        // directional lights are after ambient lights
+        // but before all other lights.
+        lastDistance = -1; 
     }
 
     /**