From f231948747899f5c68eedbbf2445e3cb64ddcdad Mon Sep 17 00:00:00 2001 From: Irlan <-> Date: Thu, 26 Jul 2018 11:10:57 -0300 Subject: [PATCH] use the precomputed constraint mass --- src/bounce/dynamics/cloth/cloth_solver.cpp | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/bounce/dynamics/cloth/cloth_solver.cpp b/src/bounce/dynamics/cloth/cloth_solver.cpp index 10b37da..5099292 100644 --- a/src/bounce/dynamics/cloth/cloth_solver.cpp +++ b/src/bounce/dynamics/cloth/cloth_solver.cpp @@ -616,17 +616,10 @@ void b3ClothSolver::SolveVelocityConstraints() // Solve normal constraint. { - b3Vec3 rnA = b3Cross(rA, normal); - b3Vec3 rnB = b3Cross(rB, normal); - - float32 K = mA + mB + b3Dot(iA * rnA, rnA) + b3Dot(iB * rnB, rnB); - - float32 invK = K > 0.0f ? 1.0f / K : 0.0f; - b3Vec3 dv = vB + b3Cross(wB, rB) - vA - b3Cross(wA, rA); float32 Cdot = b3Dot(normal, dv); - float32 impulse = invK * (-Cdot + vc->velocityBias); + float32 impulse = vc->normalMass * (-Cdot + vc->velocityBias); float32 oldImpulse = vc->normalImpulse; vc->normalImpulse = b3Max(vc->normalImpulse + impulse, 0.0f);