Merge pull request #3466 from smallquail:flex-implicit-contact
PiperOrigin-RevId: 960804180 Change-Id: Ic3eb203ca0d9cf19c9043b46127db342678d94f9
This commit is contained in:
+18
-3
@@ -4543,9 +4543,24 @@ extensions specific to flexes.
|
||||
.. _flex-contact-passive:
|
||||
|
||||
:at:`passive`: :at-val:`[true, false], "false"`
|
||||
When enabled, the contact is not added to the contact solver but it is instead used to compute passive
|
||||
(spring-damper) contact forces. All contacts, regardless of the specified condim, are frictionless (condim 1). This
|
||||
is an experimental feature.
|
||||
When enabled, contact of this flex with another flex, with itself, or with static geometry is not added to the
|
||||
contact solver and is instead applied as a passive normal force. Contact with a body that can move is left on the
|
||||
constraint solver.
|
||||
|
||||
Friction is not modelled on this path: every passive contact is frictionless (condim 1) regardless of the
|
||||
specified condim, and the force is purely normal. A flex therefore slides freely over static geometry, so a cloth
|
||||
will not stay draped over a fixed shape and will not come to rest on a slope. Where friction matters more than
|
||||
non-penetration, leave this option off.
|
||||
|
||||
The force is a penalty on penetration depth whose stiffness is chosen as a natural frequency scaled by the
|
||||
participating vertex mass, so a single value is appropriate across model scales; it is not user-specified. That
|
||||
stiffness is integrated implicitly, its curvature being carried by the effective metric, and is therefore far
|
||||
stiffer than an explicit force at the same timestep could be. It follows that the feature requires an integrator
|
||||
whose constraint solve runs in that metric: :at:`implicit` or :at:`implicitfast` with the CG solver, pyramidal
|
||||
friction cones and sleep disabled. A model requesting passive flex collisions otherwise is rejected with an error.
|
||||
|
||||
Being a penalty force, it does not guarantee non-penetration: a thin flex moving fast enough to cross another
|
||||
within one step will pass through it. This is an experimental feature.
|
||||
|
||||
|
||||
.. _deformable-skin:
|
||||
|
||||
Reference in New Issue
Block a user