* Make sure to reset planeState and viewportChanged values in when cloning cameras

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10771 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
experimental
sha..RD 12 years ago
parent 228a8e2ebd
commit 67ce41ee57
  1. 18
      engine/src/core/com/jme3/renderer/Camera.java

@ -320,22 +320,22 @@ public class Camera implements Savable, Cloneable {
this.width = cam.width; this.width = cam.width;
this.height = cam.height; this.height = cam.height;
this.planeState = cam.planeState; this.planeState = 0;
this.viewportChanged = cam.viewportChanged; this.viewportChanged = true;
for (int i = 0; i < MAX_WORLD_PLANES; ++i) { for (int i = 0; i < MAX_WORLD_PLANES; ++i) {
worldPlane[i].setNormal(cam.worldPlane[i].getNormal()); worldPlane[i].setNormal(cam.worldPlane[i].getNormal());
worldPlane[i].setConstant(cam.worldPlane[i].getConstant()); worldPlane[i].setConstant(cam.worldPlane[i].getConstant());
} }
this.parallelProjection = cam.parallelProjection; this.parallelProjection = cam.parallelProjection;
if(cam.projectionMatrixOverride != null) { if (cam.projectionMatrixOverride != null) {
if(this.projectionMatrixOverride == null) { if (this.projectionMatrixOverride == null) {
this.projectionMatrixOverride = cam.projectionMatrixOverride.clone(); this.projectionMatrixOverride = cam.projectionMatrixOverride.clone();
} else { } else {
this.projectionMatrixOverride.set(cam.projectionMatrixOverride); this.projectionMatrixOverride.set(cam.projectionMatrixOverride);
} }
} else { } else {
this.projectionMatrixOverride = null; this.projectionMatrixOverride = null;
} }
this.viewMatrix.set(cam.viewMatrix); this.viewMatrix.set(cam.viewMatrix);
this.projectionMatrix.set(cam.projectionMatrix); this.projectionMatrix.set(cam.projectionMatrix);

Loading…
Cancel
Save