Commit Graph

82 Commits

Author SHA1 Message Date
Sébastien Crozet
bef72df32c chore: CI fixes 2024-01-22 21:06:33 +01:00
Sébastien Crozet
9b87f06a85 feat: implement new "small-steps" solver + joint improvements 2024-01-21 21:02:27 +01:00
Bruce Mitchener
b9b5b58f61 docs: Expand "wrt" to "with respect to".
This makes things more clear as this abbreviation isn't known
to everyone.

While the trailing period is common in French, it isn't in English
(one might use "w.r.t.").

Fixes #498.
2023-08-28 11:13:27 +07:00
Imbris
9168d36dd4 Delete mention of removed PhysicsPipeline::step_generic
This was removed in version 0.12.0

89e3d7650c/CHANGELOG.md (L191)
2023-05-26 15:59:14 -04:00
Sébastien Crozet
0207f8cf96 Properly take initial sleeping state set by the user when creating a rigid-body 2022-12-11 17:47:42 +01:00
Sébastien Crozet
cb9350fd80 Fix tests 2022-12-11 15:50:25 +01:00
Sébastien Crozet
683baf6bf7 Allow the PhysicsPipeline and CollisionPipeline to update the QueryPipeline incrementally 2022-12-11 15:20:33 +01:00
Sébastien Crozet
46d976d97b Allow disabling colliders, rigid-bodies and impulse joints 2022-12-11 15:20:33 +01:00
Sébastien Crozet
73788a21ab Add ActiveEvents::CONTACT_FORCE_EVENTS for consistency with ActiveEvents::COLLISION_EVENTS 2022-07-07 11:01:39 +02:00
Sébastien Crozet
ba081fb6f5 Improve the API for initializing/setting mass-properties 2022-07-05 14:59:14 +02:00
Sébastien Crozet
5063f3bb4f Add the ability to disable contacts between two rigid-bodies attached by joints 2022-07-03 13:55:41 +02:00
Sébastien Crozet
b9f76e2fda Warning fixes 2022-07-01 12:00:32 +02:00
Sébastien Crozet
c9d8277377 Add contact force events generated above a user-defined threshold 2022-07-01 12:00:32 +02:00
Sébastien Crozet
d6b6189861 Properly wake-up rigid-bodies that must be awaken because of joints 2022-07-01 12:00:18 +02:00
Sébastien Crozet
10ca3474e6 Make theinstant dependency optional, behind a profiler cargo feature 2022-05-31 11:49:36 +02:00
Sébastien Crozet
bc2ae4b512 Add a basic lines-based debug-renderer 2022-04-22 16:11:23 +02:00
Sébastien Crozet
9237bfd530 Remove the default-sets feature 2022-04-20 19:02:49 +02:00
Sébastien Crozet
f108520b5a Finalize refactoring 2022-04-20 19:02:49 +02:00
Sébastien Crozet
2b1374c596 First round deleting the component sets. 2022-04-20 19:02:49 +02:00
Sébastien Crozet
ee679427cd Fix mass-properties update after collider change 2022-04-20 17:11:06 +02:00
Sébastien Crozet
0ac35e12a7 Update tests 2022-03-20 21:49:16 +01:00
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
8e07d8799f Rigid-body: don’t clear forces at end of timestep + don’t wake-up a rigid-body if the modified property is equal to the old value. 2022-03-20 21:49:16 +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
4454a845e9 Merge pull request #276 from dimforge/lock-translation-axis
Allow locking individual translational axes
2022-01-16 07:52:19 -08:00
Sébastien Crozet
0ccd15c4b1 Merge pull request #270 from tjamaan/fix_RigidBodyVelocity_rotation_center
fix the parameter used for local center of mass
2022-01-10 11:38:43 -08: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
Turki Jamaan
367fc3405f remove unnecessary comment
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2022-01-08 21:37:13 +03:00
Turki Jamaan
e41fccb9fb fix the parameter used for local center of mass 2022-01-08 20:04:22 +03:00
Sébastien Crozet
9f9d329360 Fix tests 2022-01-02 17:43:38 +01:00
Sébastien Crozet
f74b8401ad Implement multibody joints and the new solver 2022-01-02 16:58:36 +01:00
Sébastien Crozet
b364a2b052 Fix velocity computation for position-based kinematic bodies 2021-09-12 01:49:09 -07:00
Crozet Sébastien
bccb7d4c66 Track the rigid-body graph IDs inside of the JointSet instead of RigidBodyIds 2021-06-08 18:23:40 +02:00
Crozet Sébastien
bde6657287 Fix tests and wasm build. 2021-06-02 16:22:40 +02:00
Crozet Sébastien
7153eb7779 Add ActiveCollisionTypes to easily enable collision-detection between two non-static rigid-body. 2021-06-01 17:59:07 +02:00
Crozet Sébastien
dbb3c8f43b CCD: take collision groups into account 2021-06-01 14:56:24 +02:00
Crozet Sébastien
826ce5f014 Rework the event system 2021-06-01 12:36:01 +02:00
Crozet Sébastien
2dfbd9ae92 Add comments. 2021-04-30 11:37:58 +02:00
Crozet Sébastien
ac8ec8e351 Fix tests. 2021-04-29 13:03:54 +02:00
Crozet Sébastien
5cf805075e Fix compilation of the parallel version 2021-04-29 12:09:35 +02:00
Crozet Sébastien
705876f5e5 Restore the collision pipeline 2021-04-29 10:26:44 +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
5492736863 Remove useless comment. 2021-04-03 12:13:41 +02:00
Crozet Sébastien
5a0e6471cd Fix crash caused by a collider being remove before the first timestep. 2021-04-03 12:03:49 +02:00
Crozet Sébastien
a6b8b4b638 Fix tests. 2021-03-31 17:46:59 +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