Commit Graph

129 Commits

Author SHA1 Message Date
Sébastien Crozet
a9e3441ecd Rename rigid-body static to fixed 2022-03-20 21:49:16 +01:00
Sébastien Crozet
db6a8c526d Fix warnings and add comments. 2022-03-20 21:49:16 +01:00
Sébastien Crozet
a041e0d314 Add 2-axes coupling for angular joint limits 2022-03-20 21:49:16 +01:00
Sébastien Crozet
1535db87c7 Add a max penetration correction integration parameter 2022-03-20 21:49:16 +01:00
Sébastien Crozet
891c08177d Rebase on master branch 2022-03-20 21:49:16 +01:00
Sébastien Crozet
815de4beff Complete the parallel solver fix 2022-03-20 21:49:16 +01:00
Sébastien Crozet
2e6f133b95 Second round to fix the parallel solver. 2022-03-20 21:49:16 +01:00
Sébastien Crozet
412fedf7e3 Start fixing the parallel version. 2022-03-20 21:49:16 +01:00
Sébastien Crozet
fb20d72ee2 Joint API and joint motors improvements 2022-03-20 21:49:16 +01:00
Sébastien Crozet
e740493b98 Minor island solver simplification 2022-03-20 21:49:16 +01:00
Sébastien Crozet
15b165893c Use WReal instead of SimdRealField everywhere 2022-02-21 21:19:30 +01:00
Sébastien Crozet
3e25e3efba Fix the application of damping to bodies part of an active island 2022-01-28 20:28:49 +01:00
Sébastien Crozet
0c7ebae1aa Run cargo fmt 2022-01-23 18:04:24 +01:00
zhguchev
536122e080 add defaults for the several structs 2022-01-23 18:01:50 +01:00
Sébastien Crozet
5e2111bdb1 Fix compilation of parallel version 2022-01-23 17:06:42 +01:00
Sébastien Crozet
9bfcde25e0 Run cargo fmt 2022-01-23 16:59:03 +01:00
Sébastien Crozet
78c8bc6cde Improve cfm configuration using the critical damping factor 2022-01-23 16:50:26 +01:00
Sébastien Crozet
0703e5527f Fix some solver issues
- Fix the wrong codepath taken  by the solver for contacts involving a collider without parent.
- Properly adress the non-linear treatment of the friction direction
- Simplify the sleeping strategy
- Add an impulse resolution multiplier
2022-01-16 16:52:40 +01:00
Sébastien Crozet
8213e92f14 Fix parallel build. 2022-01-16 16:37:44 +01:00
Sébastien Crozet
b631fe9193 Allow locking individual translational axes 2022-01-09 22:15:36 +01:00
Sébastien Crozet
87ec0ced40 Address issues with the genral-case for multibody joints 2022-01-08 21:09:11 +01:00
Sébastien Crozet
fcf9e61e28 Fix warnings 2022-01-02 17:25:15 +01:00
Sébastien Crozet
f74b8401ad Implement multibody joints and the new solver 2022-01-02 16:58:36 +01:00
Jamen Marz
7aa94e994f Impl Default for a few structs 2021-09-25 13:50:12 +02:00
Sébastien Crozet
57aec69c1e Update to nalgebra 0.29 2021-08-08 19:19:16 +02:00
Sébastien Crozet
13aebc4242 Fix warnings. 2021-08-08 18:38:12 +02:00
Sébastien Crozet
16af01da42 Run cargo fmt 2021-08-08 18:38:12 +02:00
Sébastien Crozet
eb8f6d360d Fix 2D ball joint limits. 2021-08-08 18:38:12 +02:00
Sébastien Crozet
f7643272f4 Implement limits for ball joints. 2021-08-08 18:38:12 +02:00
Sébastien Crozet
ac77c95c9c Implement limits for revolute joints. 2021-08-08 18:38:12 +02:00
Sébastien Crozet
fd778b607f Fix emscripten build + add emscripten build to the CI 2021-07-30 11:29:32 +02:00
Sébastien Crozet
8a3103a35b Merge pull request #195 from tpdickso/ungenerate-nans
Add feature flag to disable floating point exceptions in unexceptional code
2021-06-02 17:26:47 +02:00
Terence
94993901cd wip 2021-06-01 20:41:38 -04:00
Crozet Sébastien
826ce5f014 Rework the event system 2021-06-01 12:36:01 +02:00
Crozet Sébastien
1bef66fea9 Add prelude + use vectors for setting linvel/translation in builders 2021-05-25 11:00:13 +02:00
Crozet Sébastien
5cf805075e Fix compilation of the parallel version 2021-04-29 12:09:35 +02:00
Crozet Sébastien
3810466326 Fix some warnings 2021-04-29 10:33:07 +02:00
Crozet Sébastien
c32da78f2a Split rigid-bodies and colliders into multiple components 2021-04-26 18:00:50 +02:00
Crozet Sébastien
a4fe46b5c4 Fix compilation in 2D. 2021-04-13 13:42:18 +02:00
Crozet Sébastien
d70c6f82e3 Fix torque generation for the prismatic joint motor 2021-04-13 11:44:34 +02:00
Crozet Sébastien
da9c3db5e8 Switch to nalgebra 0.26 2021-04-12 17:22:18 +02:00
Crozet Sébastien
cc3f16eb85 Fix parallel build. 2021-04-01 10:22:00 +02:00
Crozet Sébastien
0ecc302971 Some small performance improvements. 2021-04-01 10:11:32 +02:00
Crozet Sébastien
4e84c122df Fix more warnings. 2021-03-31 16:55:18 +02:00
Crozet Sébastien
e9f6384081 Fix the parallel solver to work properly with CCD. 2021-03-31 10:53:44 +02:00
Crozet Sébastien
88933bd431 Run the position solver after the CCD motion clamping. 2021-03-30 17:11:52 +02:00
Crozet Sébastien
d2ee642053 CCD: take angular motion and penetration depth into account in various thresholds. 2021-03-30 17:10:50 +02:00
Crozet Sébastien
7306821c46 Attenuate the warmstart impulse for CCD contacts.
CCD contacts result in very strong, instantaneous, impulses. So it is preferable to attenuate their contribution to subsequent timesteps to avoid overshooting.
2021-03-28 11:27:07 +02:00
Crozet Sébastien
97157c9423 First working version of non-linear CCD based on single-substep motion-clamping. 2021-03-26 18:16:27 +01:00
Crozet Sébastien
8dab63bda1 Fix regression in the WASM version of the velocity solver. 2021-03-08 15:14:54 +01:00