| Package | Description |
|---|---|
| org.bytedeco.bullet.BulletCollision | |
| org.bytedeco.bullet.BulletDynamics | |
| org.bytedeco.bullet.BulletSoftBody | |
| org.bytedeco.bullet.global |
| Modifier and Type | Class and Description |
|---|---|
class |
btGhostObject
The btGhostObject can keep track of all objects that are overlapping
By default, this overlap is based on the AABB
This is useful for creating a character controller, collision sensors/triggers, explosions etc.
|
class |
btPairCachingGhostObject |
| Modifier and Type | Method and Description |
|---|---|
btCollisionObject |
btCollisionObjectArray.at(int n) |
btCollisionObject |
btCollisionWorldImporter.createCollisionObject(btTransform startTransform,
btCollisionShape shape,
BytePointer bodyName)
those virtuals are called by load and can be overridden by the user
|
btCollisionObject |
btCollisionWorldImporter.createCollisionObject(btTransform startTransform,
btCollisionShape shape,
String bodyName) |
btCollisionObject |
btCollisionObjectArray.expand() |
btCollisionObject |
btCollisionObjectArray.expand(btCollisionObject fillValue) |
btCollisionObject |
btCollisionObjectArray.expandNonInitializing() |
btCollisionObject |
btCollisionObjectArray.get(int n) |
btCollisionObject |
btPersistentManifold.getBody0() |
btCollisionObject |
btManifoldResult.getBody0Internal() |
btCollisionObject |
btPersistentManifold.getBody1() |
btCollisionObject |
btManifoldResult.getBody1Internal() |
btCollisionObject |
btCollisionObjectWrapper.getCollisionObject() |
btCollisionObject |
btCollisionWorldImporter.getCollisionObjectByName(BytePointer name) |
btCollisionObject |
btCollisionWorldImporter.getCollisionObjectByName(String name) |
btCollisionObject |
btCollisionObject.getObjectWithoutCollision(int index) |
btCollisionObject |
btGhostObject.getOverlappingObject(int index) |
btCollisionObject |
btCollisionObject.getPointer(long i) |
btCollisionObject |
btCollisionWorldImporter.getRigidBodyByIndex(int index) |
btCollisionObject |
btCollisionObjectWrapper.m_collisionObject() |
btCollisionObject |
btCollisionWorld.LocalRayResult.m_collisionObject() |
btCollisionObject |
btCollisionWorld.RayResultCallback.m_collisionObject() |
btCollisionObject |
btCollisionWorld.LocalConvexResult.m_hitCollisionObject() |
btCollisionObject |
btCollisionWorld.ClosestConvexResultCallback.m_hitCollisionObject() |
btCollisionObject |
btCollisionObject.position(long position) |
| Modifier and Type | Method and Description |
|---|---|
void |
btCollisionWorld.addCollisionObject(btCollisionObject collisionObject) |
void |
btCollisionWorld.addCollisionObject(btCollisionObject collisionObject,
int collisionFilterGroup,
int collisionFilterMask) |
static double |
btManifoldResult.calculateCombinedContactDamping(btCollisionObject body0,
btCollisionObject body1) |
static double |
btManifoldResult.calculateCombinedContactStiffness(btCollisionObject body0,
btCollisionObject body1) |
static double |
btManifoldResult.calculateCombinedFriction(btCollisionObject body0,
btCollisionObject body1) |
static double |
btManifoldResult.calculateCombinedRestitution(btCollisionObject body0,
btCollisionObject body1)
in the future we can let the user override the methods to combine restitution and friction
|
static double |
btManifoldResult.calculateCombinedRollingFriction(btCollisionObject body0,
btCollisionObject body1) |
static double |
btManifoldResult.calculateCombinedSpinningFriction(btCollisionObject body0,
btCollisionObject body1) |
double |
btConvexConvexAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btConvex2dConvex2dAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btEmptyAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btBox2dBox2dCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btSphereTriangleCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btGImpactCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btSphereSphereCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btConvexPlaneCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btConvexConcaveCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btCompoundCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btBoxBoxCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btCompoundCompoundCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btSphereBoxCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
CalculateCombinedCallback.call(btCollisionObject body0,
btCollisionObject body1) |
boolean |
btCollisionObject.checkCollideWith(btCollisionObject co) |
boolean |
btCollisionObject.checkCollideWithOverride(btCollisionObject co) |
void |
btCollisionWorld.contactPairTest(btCollisionObject colObjA,
btCollisionObject colObjB,
btCollisionWorld.ContactResultCallback resultCallback)
contactTest performs a discrete collision test between two collision objects and calls the resultCallback if overlap if detected.
|
void |
btCollisionWorld.contactTest(btCollisionObject colObj,
btCollisionWorld.ContactResultCallback resultCallback)
contactTest performs a discrete collision test between colObj against all objects in the btCollisionWorld, and calls the resultCallback.
|
btCollisionObject |
btCollisionObjectArray.expand(btCollisionObject fillValue) |
int |
btCollisionObjectArray.findBinarySearch(btCollisionObject key)
non-recursive binary search, assumes sorted array
|
int |
btCollisionObjectArray.findLinearSearch(btCollisionObject key) |
int |
btCollisionObjectArray.findLinearSearch2(btCollisionObject key) |
btPersistentManifold |
btCollisionDispatcher.getNewManifold(btCollisionObject b0,
btCollisionObject b1) |
btPersistentManifold |
btDispatcher.getNewManifold(btCollisionObject b0,
btCollisionObject b1) |
btPersistentManifold |
btCollisionDispatcherMt.getNewManifold(btCollisionObject body0,
btCollisionObject body1) |
btCollisionObjectWrapper |
btCollisionObjectWrapper.m_collisionObject(btCollisionObject setter) |
btCollisionWorld.LocalRayResult |
btCollisionWorld.LocalRayResult.m_collisionObject(btCollisionObject setter) |
btCollisionWorld.RayResultCallback |
btCollisionWorld.RayResultCallback.m_collisionObject(btCollisionObject setter) |
btCollisionWorld.LocalConvexResult |
btCollisionWorld.LocalConvexResult.m_hitCollisionObject(btCollisionObject setter) |
btCollisionWorld.ClosestConvexResultCallback |
btCollisionWorld.ClosestConvexResultCallback.m_hitCollisionObject(btCollisionObject setter) |
boolean |
btCollisionDispatcher.needsCollision(btCollisionObject body0,
btCollisionObject body1) |
boolean |
btDispatcher.needsCollision(btCollisionObject body0,
btCollisionObject body1) |
boolean |
btCollisionDispatcher.needsResponse(btCollisionObject body0,
btCollisionObject body1) |
boolean |
btDispatcher.needsResponse(btCollisionObject body0,
btCollisionObject body1) |
static void |
btCollisionWorld.objectQuerySingle(btConvexShape castShape,
btTransform rayFromTrans,
btTransform rayToTrans,
btCollisionObject collisionObject,
btCollisionShape collisionShape,
btTransform colObjWorldTransform,
btCollisionWorld.ConvexResultCallback resultCallback,
double allowedPenetration)
objectQuerySingle performs a collision detection query and calls the resultCallback.
|
void |
btSimulationIslandManager.IslandCallback.processIsland(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifolds,
int numManifolds,
int islandId) |
void |
btCollisionObjectArray.push_back(btCollisionObject _Val) |
static void |
btCollisionWorld.rayTestSingle(btTransform rayFromTrans,
btTransform rayToTrans,
btCollisionObject collisionObject,
btCollisionShape collisionShape,
btTransform colObjWorldTransform,
btCollisionWorld.RayResultCallback resultCallback)
rayTestSingle performs a raycast call and calls the resultCallback.
|
void |
btCollisionWorld.refreshBroadphaseProxy(btCollisionObject collisionObject) |
void |
btCollisionObjectArray.remove(btCollisionObject key) |
void |
btCollisionWorld.removeCollisionObject(btCollisionObject collisionObject) |
void |
btCollisionObjectArray.resize(int newsize,
btCollisionObject fillData) |
void |
btPersistentManifold.setBodies(btCollisionObject body0,
btCollisionObject body1) |
void |
btCollisionObject.setIgnoreCollisionCheck(btCollisionObject co,
boolean ignoreCollisionCheck) |
static btGhostObject |
btGhostObject.upcast(btCollisionObject colObj) |
void |
btCollisionWorld.updateSingleAabb(btCollisionObject colObj) |
| Constructor and Description |
|---|
btPersistentManifold(btCollisionObject body0,
btCollisionObject body1,
int arg2,
double contactBreakingThreshold,
double contactProcessingThreshold) |
LocalConvexResult(btCollisionObject hitCollisionObject,
btCollisionWorld.LocalShapeInfo localShapeInfo,
btVector3 hitNormalLocal,
btVector3 hitPointLocal,
double hitFraction) |
LocalRayResult(btCollisionObject collisionObject,
btCollisionWorld.LocalShapeInfo localShapeInfo,
btVector3 hitNormalLocal,
double hitFraction) |
| Modifier and Type | Class and Description |
|---|---|
class |
btMultiBodyLinkCollider |
class |
btRigidBody
The btRigidBody is the main class for rigid body objects.
|
| Modifier and Type | Method and Description |
|---|---|
void |
btDiscreteDynamicsWorld.addCollisionObject(btCollisionObject collisionObject) |
void |
btDiscreteDynamicsWorld.addCollisionObject(btCollisionObject collisionObject,
int collisionFilterGroup,
int collisionFilterMask) |
boolean |
btMultiBodyLinkCollider.checkCollideWithOverride(btCollisionObject co) |
void |
btSequentialImpulseConstraintSolverMt.internalConvertBodies(btCollisionObject bodies,
int iBegin,
int iEnd,
btContactSolverInfo infoGlobal) |
void |
MultiBodyInplaceSolverIslandCallback.processIsland(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifolds,
int numManifolds,
int islandId) |
void |
btSimpleDynamicsWorld.removeCollisionObject(btCollisionObject collisionObject)
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btCollisionWorld::removeCollisionObject
|
void |
btDiscreteDynamicsWorld.removeCollisionObject(btCollisionObject collisionObject)
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btCollisionWorld::removeCollisionObject
|
double |
btMultiBodyConstraintSolver.solveGroup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifold,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btConstraintSolver.solveGroup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifold,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btSequentialImpulseConstraintSolver.solveGroup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifold,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btConstraintSolverPoolMt.solveGroup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifolds,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btSequentialImpulseConstraintSolverMt.solveGroupCacheFriendlyFinish(btCollisionObject bodies,
int numBodies,
btContactSolverInfo infoGlobal) |
double |
btMultiBodyConstraintSolver.solveGroupCacheFriendlyFinish(btCollisionObject bodies,
int numBodies,
btContactSolverInfo infoGlobal) |
double |
btSequentialImpulseConstraintSolverMt.solveGroupCacheFriendlySetup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifoldPtr,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo infoGlobal,
btIDebugDraw debugDrawer) |
void |
btSequentialImpulseConstraintSolverMt.solveGroupCacheFriendlySplitImpulseIterations(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifoldPtr,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo infoGlobal,
btIDebugDraw debugDrawer) |
void |
btMultiBodyConstraintSolver.solveMultiBodyGroup(btCollisionObject bodies,
int numBodies,
btPersistentManifold manifold,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btMultiBodyConstraint multiBodyConstraints,
int numMultiBodyConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btSequentialImpulseConstraintSolverMt.solveSingleIteration(int iteration,
btCollisionObject bodies,
int numBodies,
btPersistentManifold manifoldPtr,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btContactSolverInfo infoGlobal,
btIDebugDraw debugDrawer) |
static btRigidBody |
btRigidBody.upcast(btCollisionObject colObj)
to keep collision detection and dynamics separate we don't store a rigidbody pointer
but a rigidbody is derived from btCollisionObject, so we can safely perform an upcast
|
static btMultiBodyLinkCollider |
btMultiBodyLinkCollider.upcast(btCollisionObject colObj) |
| Modifier and Type | Class and Description |
|---|---|
class |
btSoftBody
The btSoftBody is an class to simulate cloth and volumetric soft bodies.
|
| Modifier and Type | Method and Description |
|---|---|
btCollisionObject |
btSoftBody.Body.m_collisionObject() |
btCollisionObject |
btSoftBody.sCti.m_colObj() |
btCollisionObject |
btSoftBody.DeformableFaceNodeContact.m_colObj() |
| Modifier and Type | Method and Description |
|---|---|
double |
btSoftRigidCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btSoftSoftCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
double |
btSoftBodyConcaveCollisionAlgorithm.calculateTimeOfImpact(btCollisionObject body0,
btCollisionObject body1,
btDispatcherInfo dispatchInfo,
btManifoldResult resultOut) |
btSoftBody.Body |
btSoftBody.Body.m_collisionObject(btCollisionObject setter) |
btSoftBody.sCti |
btSoftBody.sCti.m_colObj(btCollisionObject setter) |
btSoftBody.DeformableFaceNodeContact |
btSoftBody.DeformableFaceNodeContact.m_colObj(btCollisionObject setter) |
static void |
btSoftRigidDynamicsWorld.rayTestSingle(btTransform rayFromTrans,
btTransform rayToTrans,
btCollisionObject collisionObject,
btCollisionShape collisionShape,
btTransform colObjWorldTransform,
btCollisionWorld.RayResultCallback resultCallback)
rayTestSingle performs a raycast call and calls the resultCallback.
|
static void |
btSoftMultiBodyDynamicsWorld.rayTestSingle(btTransform rayFromTrans,
btTransform rayToTrans,
btCollisionObject collisionObject,
btCollisionShape collisionShape,
btTransform colObjWorldTransform,
btCollisionWorld.RayResultCallback resultCallback)
rayTestSingle performs a raycast call and calls the resultCallback.
|
void |
btDeformableMultiBodyDynamicsWorld.removeCollisionObject(btCollisionObject collisionObject) |
void |
btSoftRigidDynamicsWorld.removeCollisionObject(btCollisionObject collisionObject)
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btDiscreteDynamicsWorld::removeCollisionObject
|
void |
btSoftMultiBodyDynamicsWorld.removeCollisionObject(btCollisionObject collisionObject)
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btDiscreteDynamicsWorld::removeCollisionObject
|
double |
btDeformableBodySolver.solveContactConstraints(btCollisionObject deformableBodies,
int numDeformableBodies,
btContactSolverInfo infoGlobal) |
void |
btDeformableMultiBodyConstraintSolver.solveDeformableBodyGroup(btCollisionObject bodies,
int numBodies,
btCollisionObject deformableBodies,
int numDeformableBodies,
btPersistentManifold manifold,
int numManifolds,
btTypedConstraint constraints,
int numConstraints,
btMultiBodyConstraint multiBodyConstraints,
int numMultiBodyConstraints,
btContactSolverInfo info,
btIDebugDraw debugDrawer,
btDispatcher dispatcher) |
double |
btDeformableContactProjection.solveSplitImpulse(btCollisionObject deformableBodies,
int numDeformableBodies,
btContactSolverInfo infoGlobal) |
static btSoftBody |
btSoftBody.upcast(btCollisionObject colObj) |
double |
btDeformableContactProjection.update(btCollisionObject deformableBodies,
int numDeformableBodies,
btContactSolverInfo infoGlobal) |
| Constructor and Description |
|---|
Body(btCollisionObject colObj) |
| Modifier and Type | Method and Description |
|---|---|
static double |
BulletDynamics.resolveSingleCollision(btRigidBody body1,
btCollisionObject colObj2,
btVector3 contactPositionWorld,
btVector3 contactNormalOnB,
btContactSolverInfo solverInfo,
double distance)
very basic collision resolution without friction
|
Copyright © 2024. All rights reserved.