summaryrefslogtreecommitdiff
path: root/src/BulletSoftBody/btSoftBody.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/BulletSoftBody/btSoftBody.cpp')
-rw-r--r--src/BulletSoftBody/btSoftBody.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/BulletSoftBody/btSoftBody.cpp b/src/BulletSoftBody/btSoftBody.cpp
index c6226a008..933f3edc5 100644
--- a/src/BulletSoftBody/btSoftBody.cpp
+++ b/src/BulletSoftBody/btSoftBody.cpp
@@ -231,6 +231,9 @@ void btSoftBody::initDefaults()
m_gravityFactor = 1;
m_cacheBarycenter = false;
m_fdbvnt = 0;
+
+ // reduced flag
+ m_reducedModel = false;
}
//
@@ -1483,6 +1486,21 @@ void btSoftBody::randomizeConstraints()
#undef NEXTRAND
}
+void btSoftBody::updateState(const btAlignedObjectArray<btVector3>& q, const btAlignedObjectArray<btVector3>& v)
+{
+ int node_count = m_nodes.size();
+ btAssert(node_count == q.size());
+ btAssert(node_count == v.size());
+ for (int i = 0; i < node_count; i++)
+ {
+ Node& n = m_nodes[i];
+ n.m_x = q[i];
+ n.m_q = q[i];
+ n.m_v = v[i];
+ n.m_vn = v[i];
+ }
+}
+
//
void btSoftBody::releaseCluster(int index)
{
@@ -2821,7 +2839,7 @@ bool btSoftBody::checkDeformableFaceContact(const btCollisionObjectWrapper* colO
btScalar dst;
btGjkEpaSolver2::sResults results;
-// #define USE_QUADRATURE 1
+ // #define USE_QUADRATURE 1
// use collision quadrature point
#ifdef USE_QUADRATURE