Commit Graph

46 Commits

Author SHA1 Message Date
jingyuc
07cfa9a433 add cfm and penetration correction to the velocity error for the contact constraint. clean up btReducedSoftBody class. momenumtum conservation WIP 2021-10-07 15:10:57 -04:00
jingyuc
1949710131 clean up momentum conservation test example and the springboard example 2021-10-04 17:36:17 -04:00
jingyuc
c4da596778 now support scaling of reduced deformable object. the order of applying impulse is changeable now 2021-10-04 11:56:29 -04:00
jingyuc
1bee1ba4c4 support applying impulse in alternating order. change several example setups. 2021-09-28 00:55:12 -04:00
jingyuc
107c5526eb reduced motor grasp example is working 2021-09-24 13:16:33 -04:00
jingyuc
bfd3d1cd8d normal impulse for multibody vs reduced deformable contact is working 2021-09-15 16:45:20 -04:00
jingyuc
b4efd91476 add support for damping. the fixed constraint is working again with the deltaImpulse form 2021-09-12 21:53:23 -04:00
jingyuc
9d1aafc51c better support of initial rotation. 2021-09-10 13:34:34 -04:00
jingyuc
e62c42f54c rotate the modes when the mesh has a initial transformation. new grasping example with motor WIP 2021-09-09 18:35:07 -04:00
jingyuc
3a84b05058 Added a new friction slope example (ground is rotating). Fixed a problem in the reduced deformable's friction (now clamp the maximum tangential impulse based on the tangential velocity impulse at the current iteration, not the total tangential velocity at the beginning) 2021-09-06 17:56:32 -04:00
jingyuc
df07b42318 contact with moving rigid body is working. There is a sign error when calculating the deltaVelocity of the solverBody 2021-09-03 17:32:26 -04:00
jingyuc
e70fc6453b add support for initial rotation 2021-09-02 21:32:16 -04:00
jingyuc
93e00054e3 set up reduced grasping example 2021-09-02 13:35:14 -04:00
jingyuc
42fac2e364 fixed a minor issue: disable deactivation for the reduced collision example 2021-08-31 01:33:38 -04:00
jingyuc
6a87310d3c friction is working now 2021-08-25 16:38:57 -04:00
jingyuc
52abe35e41 friction seems to be working. However, when the block is only sliding on the surface, there is no friction because no delta normal impulse...need to think 2021-08-25 00:38:29 -04:00
jingyuc
166dc2865d frictionless contact also works with reduced modes enabled 2021-08-24 16:30:33 -04:00
jingyuc
840db372b9 delta impulse version is working 2021-08-24 00:40:27 -04:00
jingyuc
d9152b9cf5 WIP warm starting 2021-08-23 01:17:58 -04:00
jingyuc
368385d5ad need to project the impulse on the normal to prevent sliding 2021-08-21 15:54:34 -04:00
jingyuc
0444fea9eb collision impulse starts to look reasonable, but the motion is still strange. 2021-08-18 14:31:59 -04:00
jingyuc
eacdbe67a0 reduced velocity should be updated from i-th iteration instead of from the predicted state, because thexternal force has no memory of the previous iteration 2021-08-16 14:36:35 -04:00
jingyuc
9a17391a9a modified the code. explicit time stepping should only be implicit in velocity 2021-08-13 16:34:34 -04:00
jyc-n
d6d8c3ceac reworking static constraint WIP 2021-08-12 22:36:39 -04:00
jingyuc
35f7a1a569 add new reduced deformable contact constraint class. able to call the reduced soft body's apply impulse function 2021-08-12 12:31:44 -04:00
jingyuc
6355b06a8b use deformable contact detection for the reduced deformable model 2021-08-10 16:31:53 -04:00
jyc-n
3425c01acc created new free fall example. WIP 2021-08-09 16:26:17 -04:00
jyc-n
042a1f75c9 clean up 2021-08-09 14:54:58 -04:00
jingyuc
a56ce358f3 reduced dofs and interpolated transform needs to be updated from the time_n states in the iteration 2021-08-09 12:43:59 -04:00
jingyuc
0acf18f246 need to update the rigid frame every time when the impulse is applied. reduced external force needs to be zeroed in every iteration. 2021-08-09 11:23:52 -04:00
jingyuc
4f66d8bb87 update reduced variables and full space position every time applied the force 2021-08-06 17:10:58 -04:00
jyc-n
252aa91e9a reduced force WIP 2021-08-06 02:12:39 -04:00
jingyuc
32398d4d7f multiple fixed nodes seem okay 2021-08-05 00:00:12 -04:00
jingyuc
fdfb08b72f single fixed constraint for the rigid frame is working 2021-08-04 22:44:53 -04:00
jingyuc
35ec8b39a7 re-work the external force application. clean up position and velocity update 2021-08-02 11:31:09 -04:00
jingyuc
a37d23fa24 re-work the simulation time loop in order to support fixed constraints. still wip 2021-07-30 02:08:27 -04:00
jingyuc
5d17353269 add rigidTransformWorld to make the rendering works after applying initial translation. Center of mass looks right. Tested with rotating free fall 2021-07-29 11:45:44 -04:00
jingyuc
c6c7533167 fixed constraints wip 2021-07-28 16:36:15 -04:00
jingyuc
549b57df77 clean up 2021-07-28 14:36:42 -04:00
jyc-n
bfa74dbacd initial translation WIP 2021-07-28 00:03:51 -04:00
jingyuc
67b58428e8 clean up. now the inertia tensor is calculated based on geometry, and it is updated everytime step 2021-07-27 15:59:25 -04:00
jingyuc
24eb021ed6 clean up. impulse is now applied through a member function of btReducedSoftBody 2021-07-27 01:11:11 -04:00
jyc-n
0983d36eff rotation is working 2021-07-26 21:48:57 -04:00
jyc-n
7678545e76 clean up initialzation 2021-07-26 15:30:35 -04:00
jingyuc
9baee29300 simple rigid translation is working. 2021-07-26 11:28:37 -04:00
jyc-n
c325da8b34 add new ReducedSoftBody class. move read files functions to btReducedSoftBodyHelpers 2021-07-22 11:43:26 -04:00