Commit Graph

685 Commits

Author SHA1 Message Date
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
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
8213e92f14 Fix parallel build. 2022-01-16 16:37:44 +01: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
1308db8994 Merge pull request #267 from dimforge/multibody
Implement multibody joints, and new velocity-based constraints solver
2022-01-02 18:05:50 +01:00
Sébastien Crozet
9f9d329360 Fix tests 2022-01-02 17:43:38 +01:00
Sébastien Crozet
90edb4b532 More warning fixes + temporarily disable -D warning in the CI 2022-01-02 17:29:34 +01:00
Sébastien Crozet
fcf9e61e28 Fix warnings 2022-01-02 17:25:15 +01:00
Sébastien Crozet
ae27e1c331 Run cargo fmt 2022-01-02 17:22:37 +01:00
Sébastien Crozet
f74b8401ad Implement multibody joints and the new solver 2022-01-02 16:58:36 +01:00
Dmitry Stepanov
8e7da5ad45 fixed restrict_rotations 2021-12-31 10:05:46 +01:00
Jakub Arnold
64e5a98833 Minor documentation fixes 2021-12-31 10:04:29 +01:00
Sébastien Crozet
8fa6653820 Remove useless ref 2021-11-05 10:47:03 +01:00
Sébastien Crozet
b45d4b5ac2 Track the change of effective dominance of a rigid-body. 2021-10-26 15:38:54 +02:00
Benjamin Saunders
601955b4ee Remove duplicate test 2021-10-24 13:36:29 +02:00
Benjamin Saunders
f73e68d34a Note CCD interpenetration behavior 2021-10-24 13:35:10 +02:00
Jamen Marz
7aa94e994f Impl Default for a few structs 2021-09-25 13:50:12 +02:00
Sébastien Crozet
d858ae4c4e Make the 2D add-remove demo more intereting. 2021-09-12 01:49:09 -07:00
Sébastien Crozet
5e133aac92 Fix broad-phase bug that could result in missed collision pairs when an object leaves then re-enter a region 2021-09-12 01:49:09 -07:00
Sébastien Crozet
b364a2b052 Fix velocity computation for position-based kinematic bodies 2021-09-12 01:49:09 -07:00
Benjamin Saunders
291be142a5 Clarify coordinate space of TOI query results 2021-08-30 10:12:59 +02:00
Kane Rogers
3f223aaf9e Fix bug with colliders without rigid bodies
- When `NarrowPhase` adds a collision pair, it checks to make sure that they don't have the same parent
- In the case where the colliders have no parents (eg. they are not attached to a `RigidBody`) this yields a false positive.
- The fix is to ensure that colliders have a parent before ignoring the pair.
2021-08-26 10:29:24 +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
37a90a5409 Add missing comments. 2021-07-30 11:09:15 +02:00
Crozet Sébastien
729e510c00 Make BroadPhasePairEvent and ColliderPair public.
Otherewise it is impossible to use BroadPhase::update properly.
2021-07-30 11:09:15 +02:00
Oli Scherer
44244c324a Fix copy paste bug in ball joint docs 2021-07-27 10:47:01 +02:00
Jeff Petkau
5eb5398a7e Add a pointer from docs.rs docs to rapier docs
Added a pointer from the module-level cargo docs to the actual docs on `rapier.rs` so other people won't be lost like I was.

(Searches for documentation often end up on `docs.rs`, which is not where most of Rapier's docs live. The README has a pointer to the docs, but it isn't as visible once you're on `docs.rs`.)

This is the same change as pr89 for `bevy_rapier`. This one is less important less likely to overlook `rapier.rs`, but I think it doesn't hurt.

Ideally you'd be able to just include the `README.md` into the lib documentation, but I think that's still a nightly-only feature in cargo doc.
2021-07-27 10:46:29 +02:00
Benjamin Saunders
92b8580761 Update intersection graph regardless of active_events 2021-07-14 20:16:19 +02:00
Crozet Sébastien
8e0aa2ac79 Add methods to set the translation or rotation wrt. a collider and its parent. 2021-07-12 10:10:59 +02:00
Crozet Sébastien
77a6cd3f26 Release v0.10.0 2021-07-11 19:21:50 +02:00
Waridley
9233a855f0 impl more traits for components 2021-07-11 18:22:39 +02:00
Waridley
62d6b0651b Derive Clone for IslandManager
also fix typo
2021-06-09 11:07:37 +02:00
Crozet Sébastien
ff6c75f3bd Fix collider removal from narrow-phase when the same collider is listed twice. 2021-06-08 18:23:40 +02: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