Commit Graph

371 Commits

Author SHA1 Message Date
Sébastien Crozet d73508602e Auto-update a rigid-body’s world mass-properties when the user sets their position 2022-08-25 10:21:17 +02:00
Sébastien Crozet 68d250f0ad Merge pull request #380 from dimforge/set-rotation
Make Collider::set_rotation and RigidBody::set_rotation take a rotation instead of an axis-angle.
2022-08-09 10:06:20 +02:00
Sébastien Crozet a19c6131ff Make Collider::set_rotation and RigidBody::set_rotation take a rotation instead of an axis-angle. 2022-08-09 09:26:12 +02:00
Sébastien Crozet 4025f62314 Rename allowed_translation/rotation to enabled_translation/rotation 2022-07-08 17:16:44 +02:00
Sébastien Crozet 72c2da5554 Fix 2D build 2022-07-08 12:01:04 +02:00
Sébastien Crozet 8c707ef02d cargo fmt 2022-07-08 11:55:44 +02:00
Sébastien Crozet efaf16aaea Rename restrict_translation/rotation to set_allowed_translation/rotation 2022-07-08 11:48:31 +02:00
Sébastien Crozet 7831ebfc31 Add methods to read the mass or volume of a collider. 2022-07-05 15:15:17 +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 158308ad71 Add hepler function for building a contact force event from a contact pair 2022-07-04 15:04:06 +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 0640f5e660 Fix parallel build 2022-05-30 19:36:29 +02:00
Sébastien Crozet 31cfce4db3 Fix wasm build 2022-05-30 19:21:52 +02:00
Sébastien Crozet fef8416983 Move the cfm factor to the velocity constraints instead of the elements. 2022-05-30 19:14:05 +02:00
Sébastien Crozet ab8833f275 Add the option to automatically wake-up rigid-bodies a new joint is attached to 2022-05-30 18:29:18 +02:00
Sébastien Crozet 6ce26f3818 CCD improvements
- Fix bug where the CCD thickness wasn’t initialized properly.
- Fix bug where the contact compliance would result in unwanted tunelling, despite CCD being enabled.
2022-05-30 18:29:18 +02:00
Sébastien Crozet c46f52f451 Rename JointSet::joints_with to attached_joints 2022-05-30 17:48:31 +02:00
Sébastien Crozet 8ffb0d1658 Take round shapes into account in 2D debug render 2022-04-28 13:05:00 +02:00
Sébastien Crozet fd12d76102 Fix panic when the world is stepped with dt = 0 2022-04-28 13:04:14 +02:00
Sébastien Crozet 95418c218b Rename RigidBody::set_mass_properties -> set_additional_mass_properties 2022-04-28 13:03:55 +02:00
Sébastien Crozet ae40f4cd7e Add collision event flags 2022-04-28 13:03:14 +02:00
Sébastien Crozet 21a31bc102 Warning fix. 2022-04-20 19:02:49 +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 c26c8e4932 Type fix 2022-03-20 21:49:16 +01:00
Sébastien Crozet d22d3fcc9f Cargo fmt 2022-03-20 21:49:16 +01:00
Sébastien Crozet d38740369c Emit collision stopped events after a collider is removed. 2022-03-20 21:49:16 +01:00
Sébastien Crozet 063c638ec5 Combine contact events and intersection events into a single event type and flags 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 e2e6fc7871 Add a method to propagate collider transforms with the RigidBodySet 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 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 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 28cc19d104 Allow removing a rigid-body without auto-removing attached colliders 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 0bb0e412e6 Rename JointHandle -> ImpulseJointHandle 2022-03-20 21:49:16 +01:00
Sébastien Crozet 7703333781 Merge pull request #286 from funmaker/sleep_fix
Fix rigid bodies falling asleep when linear/angular threshold is negative
2022-03-06 22:45:28 +01:00
Nathan Stocks 4f9d21f4fd derive Debug for IntegrationParameters 2022-02-24 15:35:35 -07:00
Sébastien Crozet 15b165893c Use WReal instead of SimdRealField everywhere 2022-02-21 21:19:30 +01:00
Fun Maker 8c5f88738d Fix rigid bodies falling asleep when linear/angular threshold is negative. 2022-01-31 20:23:42 +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