浏览代码

Fixed an issue where ParticleEmitter had NaN bounds during the first update when added to the scene graph during the update loop

Nehon 8 年之前
父节点
当前提交
69cd160956
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java

+ 6 - 3
jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java

@@ -1101,9 +1101,12 @@ public class ParticleEmitter extends Geometry {
 
         lastPos.set(getWorldTranslation());
 
-        BoundingBox bbox = (BoundingBox) this.getMesh().getBound();
-        bbox.setMinMax(min, max);
-        this.setBoundRefresh();
+        //This check avoids a NaN bounds when all the particles are dead during the first update.
+        if (!min.equals(Vector3f.POSITIVE_INFINITY) && !max.equals(Vector3f.NEGATIVE_INFINITY)) {
+            BoundingBox bbox = (BoundingBox) this.getMesh().getBound();
+            bbox.setMinMax(min, max);
+            this.setBoundRefresh();
+        }
 
         vars.release();
     }