From fe20cbb55fa45bd3b1bd934033c087cd7778d6e0 Mon Sep 17 00:00:00 2001 From: "nor..67" <normen667@gmail.com> Date: Thu, 14 Feb 2013 14:19:44 +0000 Subject: [PATCH] - cleanup BulletAppState startPhysics/stopPhysics git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10405 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- .../com/jme3/bullet/BulletAppState.java | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/engine/src/bullet-common/com/jme3/bullet/BulletAppState.java b/engine/src/bullet-common/com/jme3/bullet/BulletAppState.java index e07be45e9..05aa9a926 100644 --- a/engine/src/bullet-common/com/jme3/bullet/BulletAppState.java +++ b/engine/src/bullet-common/com/jme3/bullet/BulletAppState.java @@ -154,6 +154,9 @@ public class BulletAppState implements AppState, PhysicsTickListener { * start it before for some reason, you can use this method. */ public void startPhysics() { + if (initialized) { + return; + } //start physics thread(pool) if (threadingType == ThreadingType.PARALLEL) { startPhysicsOnExecutor(); @@ -163,13 +166,24 @@ public class BulletAppState implements AppState, PhysicsTickListener { pSpace.addTickListener(this); initialized = true; } + + public void stopPhysics() { + if(!initialized){ + return; + } + if (executor != null) { + executor.shutdown(); + executor = null; + } + pSpace.removeTickListener(this); + pSpace.destroy(); + initialized = false; + } public void initialize(AppStateManager stateManager, Application app) { - if (!initialized) { - startPhysics(); - } this.app = app; this.stateManager = stateManager; + startPhysics(); } public boolean isInitialized() { @@ -263,13 +277,7 @@ public class BulletAppState implements AppState, PhysicsTickListener { stateManager.detach(debugAppState); debugAppState = null; } - if (executor != null) { - executor.shutdown(); - executor = null; - } - initialized = false; - pSpace.removeTickListener(this); - pSpace.destroy(); + stopPhysics(); } /**