fixes related to torsional friction, due to recent cone friction update.

This commit is contained in:
erwincoumans
2017-11-28 20:09:56 -08:00
parent 6baf82d6d8
commit 8ff75e11cd
6 changed files with 46 additions and 5 deletions

View File

@@ -6201,6 +6201,16 @@ bool PhysicsServerCommandProcessor::processSendPhysicsParametersCommand(const st
BT_PROFILE("CMD_SEND_PHYSICS_SIMULATION_PARAMETERS");
if (clientCmd.m_updateFlags & SIM_PARAM_ENABLE_CONE_FRICTION)
{
if (clientCmd.m_physSimParamArgs.m_enableConeFriction)
{
m_data->m_dynamicsWorld->getSolverInfo().m_solverMode &=~SOLVER_DISABLE_IMPLICIT_CONE_FRICTION;
} else
{
m_data->m_dynamicsWorld->getSolverInfo().m_solverMode |=SOLVER_DISABLE_IMPLICIT_CONE_FRICTION;
}
}
if (clientCmd.m_updateFlags&SIM_PARAM_UPDATE_DELTA_TIME)
{
m_data->m_physicsDeltaTime = clientCmd.m_physSimParamArgs.m_deltaTime;

View File

@@ -394,6 +394,8 @@ enum EnumSimDesiredStateUpdateFlags
};
enum EnumSimParamUpdateFlags
{
SIM_PARAM_UPDATE_DELTA_TIME=1,
@@ -407,7 +409,7 @@ enum EnumSimParamUpdateFlags
SIM_PARAM_UPDATE_SPLIT_IMPULSE_PENETRATION_THRESHOLD = 256,
SIM_PARAM_UPDATE_COLLISION_FILTER_MODE=512,
SIM_PARAM_UPDATE_CONTACT_BREAKING_THRESHOLD = 1024,
SIM_PARAM_MAX_CMD_PER_1MS = 2048,
SIM_PARAM_ENABLE_CONE_FRICTION = 2048,
SIM_PARAM_ENABLE_FILE_CACHING = 4096,
SIM_PARAM_UPDATE_RESTITUTION_VELOCITY_THRESHOLD = 8192,
SIM_PARAM_UPDATE_DEFAULT_NON_CONTACT_ERP=16384,

View File

@@ -692,6 +692,7 @@ struct b3PhysicsSimulationParameters
double m_restitutionVelocityThreshold;
double m_defaultNonContactERP;
double m_frictionERP;
int m_enableConeFriction;
};