public class PhysicsSpace
extends java.lang.Object
PhysicsSpace - The central jbullet-jme physics space
| Modifier and Type | Class and Description | 
|---|---|
| static class  | PhysicsSpace.BroadphaseTypeinterface with Broadphase types | 
| Modifier and Type | Field and Description | 
|---|---|
| static int | AXIS_Xindex of the X axis | 
| static int | AXIS_Yindex of the Y axis | 
| static int | AXIS_Zindex of the Z axis | 
| Constructor and Description | 
|---|
| PhysicsSpace() | 
| PhysicsSpace(PhysicsSpace.BroadphaseType broadphaseType) | 
| PhysicsSpace(Vector3f worldMin,
            Vector3f worldMax) | 
| PhysicsSpace(Vector3f worldMin,
            Vector3f worldMax,
            PhysicsSpace.BroadphaseType broadphaseType) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | add(java.lang.Object obj)adds an object to the physics space | 
| void | addAll(Spatial spatial)adds all physics controls and joints in the given spatial node to the physics space
 (e.g. | 
| void | addCollisionGroupListener(PhysicsCollisionGroupListener listener,
                         int collisionGroup)Adds a listener for a specific collision group, such a listener can disable collisions when they happen. There can be only one listener per collision group. | 
| void | addCollisionListener(PhysicsCollisionListener listener)Adds a CollisionListener that will be informed about collision events | 
| void | addCollisionObject(PhysicsCollisionObject obj) | 
| void | addTickListener(PhysicsTickListener listener)Adds the specified listener to the physics tick listeners. | 
| void | applyGravity()applies gravity value to all objects | 
| void | clearForces()clears forces of all objects | 
| void | create()Has to be called from the (designated) physics thread | 
| void | destroy()destroys the current PhysicsSpace so that a new one can be created | 
| void | distributeEvents() | 
| <V> java.util.concurrent.Future<V> | enqueue(java.util.concurrent.Callable<V> callable)calls the callable on the next physics tick (ensuring e.g. | 
| static <V> java.util.concurrent.Future<V> | enqueueOnThisThread(java.util.concurrent.Callable<V> callable) | 
| float | getAccuracy()get the current accuracy of the physics computation | 
| PhysicsSpace.BroadphaseType | getBroadphaseType() | 
| java.util.Collection<PhysicsCharacter> | getCharacterList() | 
| com.bulletphysics.dynamics.DynamicsWorld | getDynamicsWorld()used internally | 
| java.util.Collection<PhysicsGhostObject> | getGhostObjectList() | 
| Vector3f | getGravity(Vector3f gravity)Gets the gravity of the PhysicsSpace | 
| java.util.Collection<PhysicsJoint> | getJointList() | 
| static PhysicsSpace | getPhysicsSpace()Get the current PhysicsSpace running on this thread For parallel physics, this can also be called from the OpenGL thread to receive the PhysicsSpace | 
| java.util.Collection<PhysicsRigidBody> | getRigidBodyList() | 
| int | getSolverNumIterations() | 
| java.util.Collection<PhysicsVehicle> | getVehicleList() | 
| Vector3f | getWorldMax() | 
| Vector3f | getWorldMin() | 
| java.util.List<PhysicsRayTestResult> | rayTest(Vector3f from,
       Vector3f to)Performs a ray collision test and returns the results as a list of PhysicsRayTestResults | 
| java.util.List<PhysicsRayTestResult> | rayTest(Vector3f from,
       Vector3f to,
       java.util.List<PhysicsRayTestResult> results)Performs a ray collision test and returns the results as a list of PhysicsRayTestResults | 
| void | remove(java.lang.Object obj)removes an object from the physics space | 
| void | removeAll(Spatial spatial)Removes all physics controls and joints in the given spatial from the physics space
 (e.g. | 
| void | removeCollisionGroupListener(int collisionGroup) | 
| void | removeCollisionListener(PhysicsCollisionListener listener)Removes a CollisionListener from the list | 
| void | removeCollisionObject(PhysicsCollisionObject obj) | 
| void | removeTickListener(PhysicsTickListener listener) | 
| void | setAccuracy(float accuracy)sets the accuracy of the physics computation, default=1/60s | 
| void | setBroadphaseType(PhysicsSpace.BroadphaseType broadphaseType) | 
| void | setGravity(Vector3f gravity)Sets the gravity of the PhysicsSpace, set before adding physics objects! | 
| static void | setLocalThreadPhysicsSpace(PhysicsSpace space)Used internally | 
| void | setMaxSubSteps(int steps)Sets the maximum amount of extra steps that will be used to step the physics
 when the fps is below the physics fps. | 
| void | setSolverNumIterations(int numIterations)Set the number of iterations used by the contact solver. | 
| void | setWorldMax(Vector3f worldMax)only applies for AXIS_SWEEP broadphase | 
| void | setWorldMin(Vector3f worldMin)only applies for AXIS_SWEEP broadphase | 
| java.util.List<PhysicsSweepTestResult> | sweepTest(CollisionShape shape,
         Transform start,
         Transform end)Performs a sweep collision test and returns the results as a list of PhysicsSweepTestResults You have to use different Transforms for start and end (at least distance greater than 0.4f). | 
| java.util.List<PhysicsSweepTestResult> | sweepTest(CollisionShape shape,
         Transform start,
         Transform end,
         java.util.List<PhysicsSweepTestResult> results)Performs a sweep collision test and returns the results as a list of PhysicsSweepTestResults You have to use different Transforms for start and end (at least distance greater than 0.4f). | 
| void | update(float time)updates the physics space | 
| void | update(float time,
      int maxSteps)updates the physics space, uses maxSteps | 
public static final int AXIS_X
public static final int AXIS_Y
public static final int AXIS_Z
public PhysicsSpace()
public PhysicsSpace(PhysicsSpace.BroadphaseType broadphaseType)
public PhysicsSpace(Vector3f worldMin, Vector3f worldMax, PhysicsSpace.BroadphaseType broadphaseType)
public static PhysicsSpace getPhysicsSpace()
public static void setLocalThreadPhysicsSpace(PhysicsSpace space)
space - public void create()
public void update(float time)
time - the current time valuepublic void update(float time,
                   int maxSteps)
time - the current time valuemaxSteps - public void distributeEvents()
public static <V> java.util.concurrent.Future<V> enqueueOnThisThread(java.util.concurrent.Callable<V> callable)
public <V> java.util.concurrent.Future<V> enqueue(java.util.concurrent.Callable<V> callable)
V - callable - public void add(java.lang.Object obj)
obj - the PhysicsControl or Spatial with PhysicsControl to addpublic void addCollisionObject(PhysicsCollisionObject obj)
public void remove(java.lang.Object obj)
obj - the PhysicsControl or Spatial with PhysicsControl to removepublic void removeCollisionObject(PhysicsCollisionObject obj)
public void addAll(Spatial spatial)
spatial - the rootnode containing the physics objectspublic void removeAll(Spatial spatial)
spatial - the rootnode containing the physics objectspublic java.util.Collection<PhysicsRigidBody> getRigidBodyList()
public java.util.Collection<PhysicsGhostObject> getGhostObjectList()
public java.util.Collection<PhysicsCharacter> getCharacterList()
public java.util.Collection<PhysicsJoint> getJointList()
public java.util.Collection<PhysicsVehicle> getVehicleList()
public void setGravity(Vector3f gravity)
gravity - public Vector3f getGravity(Vector3f gravity)
gravity - public void applyGravity()
public void clearForces()
public void addTickListener(PhysicsTickListener listener)
listener - public void removeTickListener(PhysicsTickListener listener)
public void addCollisionListener(PhysicsCollisionListener listener)
listener - the CollisionListener to addpublic void removeCollisionListener(PhysicsCollisionListener listener)
listener - the CollisionListener to removepublic void addCollisionGroupListener(PhysicsCollisionGroupListener listener, int collisionGroup)
listener - collisionGroup - public void removeCollisionGroupListener(int collisionGroup)
public java.util.List<PhysicsRayTestResult> rayTest(Vector3f from, Vector3f to)
public java.util.List<PhysicsRayTestResult> rayTest(Vector3f from, Vector3f to, java.util.List<PhysicsRayTestResult> results)
public java.util.List<PhysicsSweepTestResult> sweepTest(CollisionShape shape, Transform start, Transform end)
public java.util.List<PhysicsSweepTestResult> sweepTest(CollisionShape shape, Transform start, Transform end, java.util.List<PhysicsSweepTestResult> results)
public void destroy()
public com.bulletphysics.dynamics.DynamicsWorld getDynamicsWorld()
public PhysicsSpace.BroadphaseType getBroadphaseType()
public void setBroadphaseType(PhysicsSpace.BroadphaseType broadphaseType)
public void setMaxSubSteps(int steps)
steps - The maximum number of extra steps, default is 4.public float getAccuracy()
public void setAccuracy(float accuracy)
accuracy - public Vector3f getWorldMin()
public void setWorldMin(Vector3f worldMin)
worldMin - public Vector3f getWorldMax()
public void setWorldMax(Vector3f worldMax)
worldMax - public void setSolverNumIterations(int numIterations)
numIterations - The number of iterations used by the contact and constraint solver.public int getSolverNumIterations()