[Bf-blender-cvs] [3e2ed11] fracture_modifier: keep objects completely intact with compounds and stability factor = 1
Martin Felke
noreply at git.blender.org
Sun Mar 27 15:13:15 CEST 2016
Commit: 3e2ed116906fcb804d8dc885044de78779a487c0
Author: Martin Felke
Date: Sun Mar 27 15:11:46 2016 +0200
Branches: fracture_modifier
https://developer.blender.org/rB3e2ed116906fcb804d8dc885044de78779a487c0
keep objects completely intact with compounds and stability factor = 1
===================================================================
M extern/bullet2/src/BulletDynamics/Dynamics/btFractureDynamicsWorld.cpp
===================================================================
diff --git a/extern/bullet2/src/BulletDynamics/Dynamics/btFractureDynamicsWorld.cpp b/extern/bullet2/src/BulletDynamics/Dynamics/btFractureDynamicsWorld.cpp
index 87fadaa..8dffc91 100644
--- a/extern/bullet2/src/BulletDynamics/Dynamics/btFractureDynamicsWorld.cpp
+++ b/extern/bullet2/src/BulletDynamics/Dynamics/btFractureDynamicsWorld.cpp
@@ -1159,6 +1159,7 @@ void btFractureDynamicsWorld::fractureCallback( )
for (int k=0;k<manifold->getNumContacts();k++)
{
btManifoldPoint& pt = manifold->getContactPoint(k);
+ btScalar impulse = pt.m_appliedImpulse * (1.0f - sFracturePairs[i].m_fracObj->m_propagationParameter.m_stability_factor);
if (manifold->getBody0()==sFracturePairs[i].m_fracObj)
{
for (int f=0;f<sFracturePairs[i].m_fracObj->m_connections.size();f++)
@@ -1168,7 +1169,7 @@ void btFractureDynamicsWorld::fractureCallback( )
if ((connection.m_childIndex0 == pt.m_index0) ||
(connection.m_childIndex1 == pt.m_index0))
{
- connection.m_strength -= pt.m_appliedImpulse;
+ connection.m_strength -= impulse;
//printf("strength0=%f\n",connection.m_strength);
if (connection.m_strength<0)
@@ -1192,7 +1193,7 @@ void btFractureDynamicsWorld::fractureCallback( )
(connection.m_childIndex1 == pt.m_index1))
{
//printf("strength1=%f\n",connection.m_strength);
- connection.m_strength -= pt.m_appliedImpulse;
+ connection.m_strength -= impulse;
if (connection.m_strength<0)
{
//remove or set to zero
More information about the Bf-blender-cvs
mailing list