btRigidBody* FractureBody::updateConnection(int con_id) { btAssert(con_id >= 0 && con_id < m_connections.size()); Connection& connection = m_connections[con_id]; if (m_connections[con_id].m_shapeId < 0) { return 0; } if (connection.m_accImpulse > connection.m_elasticLimit) { if (connection.m_accImpulse > connection.m_plasticLimit) { return breakConnection(con_id); } btScalar damage = connection.m_accImpulse - connection.m_elasticLimit; connection.m_elasticLimit -= damage * 0.5; connection.m_plasticLimit -= damage * 0.5; } connection.m_accImpulse = 0; return 0; }
Mp3tunesHarmonyDaemon::~Mp3tunesHarmonyDaemon() { breakConnection(); delete m_harmony; delete m_gerr; }