Physics Simulation Forum

 

All times are UTC




Post new topic Reply to topic  [ 1 post ] 
Author Message
PostPosted: Fri Oct 06, 2017 3:03 pm 
Offline

Joined: Thu Mar 12, 2015 1:11 pm
Posts: 6
Location: Dundee, Scotland, UK
Hi All,

I'm trying to understand the calculation used to resolve collisions between rigid and soft bodies. Specifically the following line in the function PSolve_RContacts in btSoftBody.cpp.

const btVector3 impulse = c.m_c0 * ( (vr - (fv * c.m_c3) + (cti.m_normal * (dp * c.m_c4))) * kst );

I understand c.m_c0 is the impulse matrix and the part I've highlighted in blue is the distance the soft body node should move to resolve the collision.
What I don't quite get is the use of vr in the equation. vr is the distance moved by the soft body node relative to the distance moved by the rigid body this time step.

My understanding is that the movement represented by vr has already been applied to node and I'm not sure why it's present in this calculation to calculate the additional impulse needed to resolve the collision.

I'm hoping my understanding is incorrect :-)

Can anyone shed any light on this?


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 15 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group