Merge remote-tracking branch 'bp/master'
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
# Bullet Physics SDK
|
# Bullet Physics SDK
|
||||||
|
|
||||||
This is the official C++ source code repository of the Bullet Physics SDK: real-time collision detection and multi-physics simulation for games, visual effects, robotics etc.
|
This is the official C++ source code repository of the Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.
|
||||||
|
|
||||||
New in Bullet 2.85: pybullet Python bindings, improved support for robotics and VR
|
New in Bullet 2.85: pybullet Python bindings, improved support for robotics and VR
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ class btCollisionShape;
|
|||||||
#include "LinearMath/btAlignedObjectArray.h"
|
#include "LinearMath/btAlignedObjectArray.h"
|
||||||
#include "LinearMath/btPoolAllocator.h"
|
#include "LinearMath/btPoolAllocator.h"
|
||||||
#include "btBulletCollisionCommon.h"
|
#include "btBulletCollisionCommon.h"
|
||||||
#include "BulletCollision/CollisionDispatch/btSimulationIslandManagerMt.h" // for setSplitIslands()
|
#include "BulletDynamics/Dynamics/btSimulationIslandManagerMt.h" // for setSplitIslands()
|
||||||
#include "BulletDynamics/Dynamics/btDiscreteDynamicsWorldMt.h"
|
#include "BulletDynamics/Dynamics/btDiscreteDynamicsWorldMt.h"
|
||||||
#include "BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h"
|
#include "BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h"
|
||||||
|
|
||||||
|
|||||||
@@ -199,7 +199,7 @@ void MultiThreadedDemo::createSceneObjects()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#if 0
|
||||||
if ( false )
|
if ( false )
|
||||||
{
|
{
|
||||||
// destroyer ball
|
// destroyer ball
|
||||||
@@ -211,6 +211,7 @@ void MultiThreadedDemo::createSceneObjects()
|
|||||||
btRigidBody* ballBody = localCreateRigidBody( 10000.f, sphereTrans, ball );
|
btRigidBody* ballBody = localCreateRigidBody( 10000.f, sphereTrans, ball );
|
||||||
ballBody->setLinearVelocity( btVector3( 0, 0, -10 ) );
|
ballBody->setLinearVelocity( btVector3( 0, 0, -10 ) );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
m_guiHelper->autogenerateGraphicsObjects( m_dynamicsWorld );
|
m_guiHelper->autogenerateGraphicsObjects( m_dynamicsWorld );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4083,6 +4083,7 @@ void PhysicsServerCommandProcessor::createDefaultRobotAssets()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//directly set the position of the links, only for debugging IK, don't use this method!
|
//directly set the position of the links, only for debugging IK, don't use this method!
|
||||||
|
#if 0
|
||||||
if (0)
|
if (0)
|
||||||
{
|
{
|
||||||
for (int i=0;i<mb->getNumLinks();i++)
|
for (int i=0;i<mb->getNumLinks();i++)
|
||||||
@@ -4091,6 +4092,7 @@ void PhysicsServerCommandProcessor::createDefaultRobotAssets()
|
|||||||
mb->setJointPosMultiDof(i,&desiredPosition);
|
mb->setJointPosMultiDof(i,&desiredPosition);
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
int numMotors = 0;
|
int numMotors = 0;
|
||||||
//find the joint motors and apply the desired velocity and maximum force/torque
|
//find the joint motors and apply the desired velocity and maximum force/torque
|
||||||
|
|||||||
@@ -2636,17 +2636,17 @@ static PyMethodDef SpamMethods[] = {
|
|||||||
#endif
|
#endif
|
||||||
},
|
},
|
||||||
|
|
||||||
{"getContactPoints", pybullet_getContactPointData, METH_VARARGS | METH_KEYWORDS,
|
{"getContactPoints", (PyCFunction)pybullet_getContactPointData, METH_VARARGS | METH_KEYWORDS,
|
||||||
"Return existing contact points after the stepSimulation command. "
|
"Return existing contact points after the stepSimulation command. "
|
||||||
"Optional arguments one or two object unique "
|
"Optional arguments one or two object unique "
|
||||||
"ids, that need to be involved in the contact."},
|
"ids, that need to be involved in the contact."},
|
||||||
|
|
||||||
{"getClosestPoints", pybullet_getClosestPointData, METH_VARARGS | METH_KEYWORDS,
|
{"getClosestPoints", (PyCFunction)pybullet_getClosestPointData, METH_VARARGS | METH_KEYWORDS,
|
||||||
"Compute the closest points between two objects, if the distance is below a given threshold."
|
"Compute the closest points between two objects, if the distance is below a given threshold."
|
||||||
"Input is two objects unique ids and distance threshold."
|
"Input is two objects unique ids and distance threshold."
|
||||||
},
|
},
|
||||||
|
|
||||||
{ "getOverlappingObjects", pybullet_getOverlappingObjects, METH_VARARGS | METH_KEYWORDS,
|
{ "getOverlappingObjects", (PyCFunction)pybullet_getOverlappingObjects, METH_VARARGS | METH_KEYWORDS,
|
||||||
"Return all the objects that have overlap with a given "
|
"Return all the objects that have overlap with a given "
|
||||||
"axis-aligned bounding box volume (AABB)."
|
"axis-aligned bounding box volume (AABB)."
|
||||||
"Input are two vectors defining the AABB in world space [min_x,min_y,min_z],[max_x,max_y,max_z]."
|
"Input are two vectors defining the AABB in world space [min_x,min_y,min_z],[max_x,max_y,max_z]."
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ SET(BulletCollision_SRCS
|
|||||||
CollisionDispatch/btInternalEdgeUtility.h
|
CollisionDispatch/btInternalEdgeUtility.h
|
||||||
CollisionDispatch/btManifoldResult.cpp
|
CollisionDispatch/btManifoldResult.cpp
|
||||||
CollisionDispatch/btSimulationIslandManager.cpp
|
CollisionDispatch/btSimulationIslandManager.cpp
|
||||||
CollisionDispatch/btSimulationIslandManagerMt.cpp
|
|
||||||
CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
|
CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
|
||||||
CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
|
CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
|
||||||
CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
|
CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
|
||||||
@@ -141,7 +140,6 @@ SET(CollisionDispatch_HDRS
|
|||||||
CollisionDispatch/btHashedSimplePairCache.h
|
CollisionDispatch/btHashedSimplePairCache.h
|
||||||
CollisionDispatch/btManifoldResult.h
|
CollisionDispatch/btManifoldResult.h
|
||||||
CollisionDispatch/btSimulationIslandManager.h
|
CollisionDispatch/btSimulationIslandManager.h
|
||||||
CollisionDispatch/btSimulationIslandManagerMt.h
|
|
||||||
CollisionDispatch/btSphereBoxCollisionAlgorithm.h
|
CollisionDispatch/btSphereBoxCollisionAlgorithm.h
|
||||||
CollisionDispatch/btSphereSphereCollisionAlgorithm.h
|
CollisionDispatch/btSphereSphereCollisionAlgorithm.h
|
||||||
CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
|
CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ public:
|
|||||||
|
|
||||||
virtual void getBoundingSphere(btVector3& center,btScalar& radius) const;
|
virtual void getBoundingSphere(btVector3& center,btScalar& radius) const;
|
||||||
|
|
||||||
///getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations.
|
///getAngularMotionDisc returns the maximum radius needed for Conservative Advancement to handle time-of-impact with rotations.
|
||||||
virtual btScalar getAngularMotionDisc() const;
|
virtual btScalar getAngularMotionDisc() const;
|
||||||
|
|
||||||
virtual btScalar getContactBreakingThreshold(btScalar defaultContactThresholdFactor) const;
|
virtual btScalar getContactBreakingThreshold(btScalar defaultContactThresholdFactor) const;
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ SET(BulletDynamics_SRCS
|
|||||||
ConstraintSolver/btUniversalConstraint.cpp
|
ConstraintSolver/btUniversalConstraint.cpp
|
||||||
Dynamics/btDiscreteDynamicsWorld.cpp
|
Dynamics/btDiscreteDynamicsWorld.cpp
|
||||||
Dynamics/btDiscreteDynamicsWorldMt.cpp
|
Dynamics/btDiscreteDynamicsWorldMt.cpp
|
||||||
|
Dynamics/btSimulationIslandManagerMt.cpp
|
||||||
Dynamics/btRigidBody.cpp
|
Dynamics/btRigidBody.cpp
|
||||||
Dynamics/btSimpleDynamicsWorld.cpp
|
Dynamics/btSimpleDynamicsWorld.cpp
|
||||||
# Dynamics/Bullet-C-API.cpp
|
# Dynamics/Bullet-C-API.cpp
|
||||||
@@ -72,6 +73,7 @@ SET(Dynamics_HDRS
|
|||||||
Dynamics/btActionInterface.h
|
Dynamics/btActionInterface.h
|
||||||
Dynamics/btDiscreteDynamicsWorld.h
|
Dynamics/btDiscreteDynamicsWorld.h
|
||||||
Dynamics/btDiscreteDynamicsWorldMt.h
|
Dynamics/btDiscreteDynamicsWorldMt.h
|
||||||
|
Dynamics/btSimulationIslandManagerMt.h
|
||||||
Dynamics/btDynamicsWorld.h
|
Dynamics/btDynamicsWorld.h
|
||||||
Dynamics/btSimpleDynamicsWorld.h
|
Dynamics/btSimpleDynamicsWorld.h
|
||||||
Dynamics/btRigidBody.h
|
Dynamics/btRigidBody.h
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ subject to the following restrictions:
|
|||||||
#include "BulletCollision/BroadphaseCollision/btSimpleBroadphase.h"
|
#include "BulletCollision/BroadphaseCollision/btSimpleBroadphase.h"
|
||||||
#include "BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h"
|
#include "BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h"
|
||||||
#include "BulletCollision/CollisionShapes/btCollisionShape.h"
|
#include "BulletCollision/CollisionShapes/btCollisionShape.h"
|
||||||
#include "BulletCollision/CollisionDispatch/btSimulationIslandManagerMt.h"
|
#include "btSimulationIslandManagerMt.h"
|
||||||
#include "LinearMath/btTransformUtil.h"
|
#include "LinearMath/btTransformUtil.h"
|
||||||
#include "LinearMath/btQuickprof.h"
|
#include "LinearMath/btQuickprof.h"
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ subject to the following restrictions:
|
|||||||
#ifndef BT_SIMULATION_ISLAND_MANAGER_MT_H
|
#ifndef BT_SIMULATION_ISLAND_MANAGER_MT_H
|
||||||
#define BT_SIMULATION_ISLAND_MANAGER_MT_H
|
#define BT_SIMULATION_ISLAND_MANAGER_MT_H
|
||||||
|
|
||||||
#include "btSimulationIslandManager.h"
|
#include "BulletCollision/CollisionDispatch/btSimulationIslandManager.h"
|
||||||
|
|
||||||
class btTypedConstraint;
|
class btTypedConstraint;
|
||||||
|
|
||||||
Reference in New Issue
Block a user