From c6d659684e911e00de4a145197e0ed24ade9a54e Mon Sep 17 00:00:00 2001 From: "rem..om" Date: Tue, 15 Jan 2013 23:05:28 +0000 Subject: [PATCH] BatchNode and physics : Reverted previous change and made the batchNode batch geom to ignore physics. see post http://jmonkeyengine.org/forum/topic/batchnode-breaks-createmeshshape/page/2/#post-200684 git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10076 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- .../com/jme3/bullet/util/CollisionShapeFactory.java | 2 +- engine/src/core/com/jme3/scene/BatchNode.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java b/engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java index 3f38e0e50..38551ea3f 100644 --- a/engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java +++ b/engine/src/bullet-common/com/jme3/bullet/util/CollisionShapeFactory.java @@ -102,7 +102,7 @@ public class CollisionShapeFactory { shape.addChildShape(new HeightfieldCollisionShape(terrain.getHeightMap(), terrain.getLocalScale()), trans.getTranslation(), trans.getRotation().toRotationMatrix()); - } else if (spatial instanceof Geometry && !((Geometry)spatial).isBatched()) { + } else if (spatial instanceof Geometry) { Boolean bool = spatial.getUserData(UserData.JME_PHYSICSIGNORE); if (bool != null && bool.booleanValue()) { continue; // go to the next child in the loop diff --git a/engine/src/core/com/jme3/scene/BatchNode.java b/engine/src/core/com/jme3/scene/BatchNode.java index 4c9d47271..8af70b5f8 100644 --- a/engine/src/core/com/jme3/scene/BatchNode.java +++ b/engine/src/core/com/jme3/scene/BatchNode.java @@ -179,6 +179,7 @@ public class BatchNode extends Node implements Savable { //we set the batch geometries to ignore transforms to avoid transforms of parent nodes to be applied twice for (Batch batch : batches.getArray()) { batch.geometry.setIgnoreTransform(true); + batch.geometry.setUserData(UserData.JME_PHYSICSIGNORE, true); } }