private void removeRigidBody(PhysicsRigidBody node) { if (!physicsBodies.containsKey(node.getObjectId())) { logger.log( Level.WARNING, "RigidBody {0} does not exist in PhysicsSpace, cannot remove.", node); return; } if (node instanceof PhysicsVehicle) { logger.log( Level.FINE, "Removing vehicle constraint {0} from physics space.", Long.toHexString(((PhysicsVehicle) node).getVehicleId())); physicsVehicles.remove(((PhysicsVehicle) node).getVehicleId()); removeVehicle(physicsSpaceId, ((PhysicsVehicle) node).getVehicleId()); } logger.log( Level.FINE, "Removing RigidBody {0} from physics space.", Long.toHexString(node.getObjectId())); physicsBodies.remove(node.getObjectId()); removeRigidBody(physicsSpaceId, node.getObjectId()); }