Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErwin Coumans <blender@erwincoumans.com>2006-06-23 04:34:59 +0400
committerErwin Coumans <blender@erwincoumans.com>2006-06-23 04:34:59 +0400
commitce0436fb01b7f1f69fbae493401d6e9c85898186 (patch)
tree5ac5d21f91e7e6c3f1e2251df9734b996844ace7 /extern/bullet
parent481364cc40b49eb89c7164bfb2650b839f182c77 (diff)
bugfix: tau/damping not linked up, this allows for solving some physics setup problems
Diffstat (limited to 'extern/bullet')
-rw-r--r--extern/bullet/BulletDynamics/ConstraintSolver/ContactConstraint.cpp10
-rw-r--r--extern/bullet/BulletDynamics/ConstraintSolver/ContactSolverInfo.h2
2 files changed, 6 insertions, 6 deletions
diff --git a/extern/bullet/BulletDynamics/ConstraintSolver/ContactConstraint.cpp b/extern/bullet/BulletDynamics/ConstraintSolver/ContactConstraint.cpp
index e55c18e4716..1b97934aa17 100644
--- a/extern/bullet/BulletDynamics/ConstraintSolver/ContactConstraint.cpp
+++ b/extern/bullet/BulletDynamics/ConstraintSolver/ContactConstraint.cpp
@@ -135,19 +135,19 @@ float resolveSingleCollision(
SimdScalar Kfps = 1.f / solverInfo.m_timeStep ;
float damping = solverInfo.m_damping ;
- float Kerp = solverInfo.m_erp;
+ float tau = solverInfo.m_tau;
if (useGlobalSettingContacts)
{
damping = contactDamping;
- Kerp = contactTau;
+ tau = contactTau;
}
- float Kcor = Kerp *Kfps;
+ float Kcor = tau *Kfps;
//printf("dist=%f\n",distance);
- ConstraintPersistentData* cpd = (ConstraintPersistentData*) contactPoint.m_userPersistentData;
+ ConstraintPersistentData* cpd = (ConstraintPersistentData*) contactPoint.m_userPersistentData;
assert(cpd);
SimdScalar distance = cpd->m_penetration;//contactPoint.GetDistance();
@@ -156,7 +156,7 @@ float resolveSingleCollision(
//distance = 0.f;
SimdScalar positionalError = Kcor *-distance;
//jacDiagABInv;
- SimdScalar velocityError = cpd->m_restitution - rel_vel;// * damping;
+ SimdScalar velocityError = cpd->m_restitution - rel_vel * damping;
SimdScalar penetrationImpulse = positionalError * cpd->m_jacDiagABInv;
diff --git a/extern/bullet/BulletDynamics/ConstraintSolver/ContactSolverInfo.h b/extern/bullet/BulletDynamics/ConstraintSolver/ContactSolverInfo.h
index 2ec9b7f6ca1..6c6325df8a6 100644
--- a/extern/bullet/BulletDynamics/ConstraintSolver/ContactSolverInfo.h
+++ b/extern/bullet/BulletDynamics/ConstraintSolver/ContactSolverInfo.h
@@ -22,7 +22,7 @@ struct ContactSolverInfo
inline ContactSolverInfo()
{
- m_tau = 0.6f;
+ m_tau = 0.4f;
m_damping = 1.0f;
m_friction = 0.3f;
m_restitution = 0.f;