expose pybullet.setPhysicsEngineParameter(numSubSteps=int)

This commit is contained in:
Erwin Coumans
2016-12-05 11:54:56 -08:00
parent e20c487e52
commit 024ab6725b

View File

@@ -425,15 +425,16 @@ static PyObject* pybullet_setPhysicsEngineParameter(PyObject* self, PyObject* ar
int numSolverIterations = -1; int numSolverIterations = -1;
int useSplitImpulse = -1; int useSplitImpulse = -1;
double splitImpulsePenetrationThreshold = -1; double splitImpulsePenetrationThreshold = -1;
int numSubSteps = -1;
if (0 == sm) { if (0 == sm) {
PyErr_SetString(SpamError, "Not connected to physics server."); PyErr_SetString(SpamError, "Not connected to physics server.");
return NULL; return NULL;
} }
static char *kwlist[] = { "fixedTimeStep", "numSolverIterations","useSplitImpulse","splitImpulsePenetrationThreshold", NULL }; static char *kwlist[] = { "fixedTimeStep", "numSolverIterations","useSplitImpulse","splitImpulsePenetrationThreshold", "numSubSteps", NULL };
if (!PyArg_ParseTupleAndKeywords(args, keywds, "|diid", kwlist,&fixedTimeStep,&numSolverIterations,&useSplitImpulse,&splitImpulsePenetrationThreshold)) if (!PyArg_ParseTupleAndKeywords(args, keywds, "|diidi", kwlist,&fixedTimeStep,&numSolverIterations,&useSplitImpulse,&splitImpulsePenetrationThreshold,&numSubSteps))
{ {
return NULL; return NULL;
} }
@@ -445,6 +446,10 @@ static PyObject* pybullet_setPhysicsEngineParameter(PyObject* self, PyObject* ar
{ {
b3PhysicsParamSetNumSolverIterations(command, numSolverIterations); b3PhysicsParamSetNumSolverIterations(command, numSolverIterations);
} }
if (numSubSteps >= 0)
{
b3PhysicsParamSetNumSubSteps(command, numSubSteps);
}
if (fixedTimeStep >= 0) if (fixedTimeStep >= 0)
{ {
b3PhysicsParamSetTimeStep(command, fixedTimeStep); b3PhysicsParamSetTimeStep(command, fixedTimeStep);