Commit Graph

764 Commits

Author SHA1 Message Date
Emil Ernerfeldt
97031a6851 Reorder default() constructor order to match that of the struct
Makes it easier to verify the default values mentioned in the docstrings.
2021-01-21 18:07:28 +01:00
Emil Ernerfeldt
9b59d94bd9 Fix incorrect default value for allowed_linear_error in docstring 2021-01-21 18:06:29 +01:00
Emil Ernerfeldt
c334ced31f Replace call to IntegrationParameters::new with explicit construction
This help readability a lot
2021-01-21 17:22:10 +01:00
Crozet Sébastien
800b35b103 Add collider constructors for shapes obtained from convex decomposition. 2021-01-21 16:29:05 +01:00
Crozet Sébastien
98d3980db7 Allow several rules for combining friction/restitution coefficients. 2021-01-21 16:03:27 +01:00
Crozet Sébastien
8f330b2a00 Rotation locking: apply filter only to the world inertia properties to fix the multi-collider case. 2021-01-21 14:58:40 +01:00
Crozet Sébastien
d69b5876f3 Fix velocity constraints for ball joints involving bodies with non-uniform angular inertia.
Fix #86
2021-01-20 17:20:01 +01:00
Crozet Sébastien
0ade350b5f Use newtypes for collider, rigid-body and joint handles. 2021-01-20 16:33:42 +01:00
Crozet Sébastien
28b7866aee Switch to [u32; DIM] instead of Point<u32> for element indices. 2021-01-20 15:40:00 +01:00
Crozet Sébastien
e2006599a8 Add 3D convex decomposition example. 2021-01-20 15:15:33 +01:00
Crozet Sébastien
87b56c38b6 Properly reset the BodySet::modified_all_bodies flag. 2021-01-12 15:07:39 +01:00
Crozet Sébastien
2231d0f6ea Add gravity scaling to rigid-bodies. 2021-01-06 18:09:21 +01:00
Crozet Sébastien
261ed1ebed Fix 2D compilation. 2021-01-06 12:53:26 +01:00
Crozet Sébastien
00da4aaa42 Add compound shape support. 2021-01-05 15:34:48 +01:00
Crozet Sébastien
c28b14d31c Refactor the parallel solver code the same way we did with the non-parallel solver. 2021-01-04 17:59:56 +01:00
Crozet Sébastien
aa61fe65e3 Add support of 64-bits reals. 2021-01-04 15:14:25 +01:00
Crozet Sébastien
a1aa8855f7 Query pipeline: add methods to collect all intersections with a point or a shape. 2020-12-31 18:23:14 +01:00
Crozet Sébastien
7b098606c2 QueryPipeline: add shape casting, point projection, and intersection queries. 2020-12-31 16:30:38 +01:00
Crozet Sébastien
1feac2e02d Restore contact events. 2020-12-31 11:37:42 +01:00
Crozet Sébastien
967145a949 Perform contact sorting in the narrow-phase directly. 2020-12-31 11:16:03 +01:00
Crozet Sébastien
64507a68e1 Refactor the constraints solver code. 2020-12-31 10:32:34 +01:00
Crozet Sébastien
348a339fe3 Remove code related to point-point kinematics. 2020-12-31 10:02:51 +01:00
Crozet Sébastien
eea888af93 Fix broken position constraint. 2020-12-30 18:33:01 +01:00
Crozet Sébastien
5e35250183 Define the MAX_MANIFOLD_POINTS in this crate. 2020-12-30 17:46:22 +01:00
Crozet Sébastien
43628c8846 Try using solver contacts again, but in a more cache-coherent way. 2020-12-30 17:30:07 +01:00
Crozet Sébastien
7545e06cb1 Attempt to combine the position constraints initialization with the velocity constraints initialization. 2020-12-30 12:03:25 +01:00
Crozet Sébastien
5876a262da Remove the useless manifold.data.pair field. 2020-12-30 11:44:08 +01:00
Crozet Sébastien
94c67a0c31 Support compound shapes. 2020-12-29 11:36:19 +01:00
Crozet Sébastien
8d925a02ef Add convex polygons support. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
486fbd972f Add example for 3D convex polyhedron. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
0fb4b4faef Use Isometry::inv_mul. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
7488cd02e8 Remove unused constrants. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
0d2eb5f2e0 Remove some commented code. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
a0c2a2c309 Fix compilation when serde is enabled. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
5c38113690 Fix compilation when serde isn't enabled. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
8fe2df126a Remove some irrelevant code. 2020-12-29 11:31:59 +01:00
Crozet Sébastien
29717c2887 Externalize the proximity code (renamed intersection). 2020-12-29 11:31:59 +01:00
Crozet Sébastien
e231bacec6 Move all the contact manifold computations out of Rapier. 2020-12-29 11:31:00 +01:00
Crozet Sébastien
cc6d1b9730 Outsource the Shape trait, wquadtree, and shape types. 2020-12-29 11:31:00 +01:00
Crozet Sébastien
9bf1321f8f Outsource the contact manifold, SAT, and some shapes. 2020-12-29 11:31:00 +01:00
Crozet Sébastien
aada91966a Add a RigidBody::set_mass_properties method. 2020-12-02 11:26:20 +01:00
Crozet Sébastien
bde828cdab Fix a bug when applying the parallel axis theorem to the angular inertia matrix is incorrect if the mass is zero. 2020-12-02 11:12:26 +01:00
Crozet Sébastien
a072d4056a Rename RigidBodyBuilder::principal_inertia -> principal_angular_inertia for clarity. 2020-12-01 15:07:04 +01:00
Crozet Sébastien
1e0f76b02c Add a 2D demo for locking rotation. 2020-11-30 15:41:32 +01:00
Crozet Sébastien
715d0fe16e Update the changelog + make the boolean flags more intuitive. 2020-11-30 15:35:36 +01:00
Crozet Sébastien
c3e951f896 Add a simpler to lock the rotation or translation of a dynamic rigid-body. 2020-11-30 15:26:22 +01:00
Crozet Sébastien
340f614d32 Restore the previous sleeping pattern. 2020-11-26 12:49:35 +01:00
Crozet Sébastien
391bcf372a Fix collider insertion/removal tracking. 2020-11-26 11:41:54 +01:00
Crozet Sébastien
f293dc6024 Fix bogus collider removal in the broad-phase. 2020-11-26 11:40:59 +01:00
Crozet Sébastien
7541108746 Make the RigidBodyChanges values more readable. 2020-11-25 16:34:43 +01:00