Commit Graph

56 Commits

Author SHA1 Message Date
Crozet Sébastien
2dfbd9ae92 Add comments. 2021-04-30 11:37:58 +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
2a21f47136 Add getters indicating if the translation or rotation dofs of a rigid-body are locked. 2021-04-01 15:43:47 +02:00
Crozet Sébastien
0ecc302971 Some small performance improvements. 2021-04-01 10:11:32 +02:00
Crozet Sébastien
4fb898c77c Remove useless rigid-body fields. 2021-04-01 09:46:13 +02:00
Crozet Sébastien
3412e9ddbf Fix some warnings. 2021-03-31 12:35:54 +02:00
Crozet Sébastien
d82fc0d23d Fix body status modification. 2021-03-31 12:09:09 +02:00
Crozet Sébastien
1187ef796d Rename some RigidBodyBuilder mass-related setters to include "additional". 2021-03-31 10:55:36 +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
a733f97028 Implement the ability to run multiple CCD substeps. 2021-03-29 17:21:49 +02:00
Crozet Sébastien
8173e7ada2 Allow collider modification after its insersion to the ColliderSet. 2021-03-29 14:54:54 +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
Emil Ernerfeldt
589c6ce834 Call update_world_mass_properties from RigidBody::set_mass_properties 2021-03-04 09:09:29 +01:00
Crozet Sébastien
1609d93243 Fix missing sqrt when setting the angular inertia of a rigid-body. 2021-03-03 10:20:14 +01:00
Crozet Sébastien
96ecb877e2 Implement dominance. 2021-02-24 13:26:51 +01:00
Emil Ernerfeldt
e870acf011 Omit integrate_accelerations in feature = parallel 2021-02-08 17:15:31 +01:00
Emil Ernerfeldt
d999e0e8c6 Apply accelerations during velocity solver
Closes https://github.com/dimforge/rapier/issues/97

Instead of applying accelerations from gravity and external forces
as a separate step, this PR switches to applying them in the velocity solver.
2021-02-08 17:15:28 +01:00
Emil Ernerfeldt
17ef7e10f9 Replace linacc/angacc with force/torque inside of RigidBody
I also improved the documentation for the various force/impulse applying functions.
2021-02-08 15:54:17 +01:00
Sébastien Crozet
a272f4ce9e Merge pull request #104 from EmbarkStudios/clippy-fixes
Make clippy a bit happier
2021-02-04 18:20:27 +01:00
Emil Ernerfeldt
85bc81d4fc Make clippy a bit happier 2021-02-04 13:11:04 +01:00
Emil Ernerfeldt
4c1aac25a7 Add functions for kinetic and potential energy of a RigidBody 2021-02-04 12:42:33 +01:00
Crozet Sébastien
8f7220f03d Rename cdl to parry. 2021-01-24 11:13:44 +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
0ade350b5f Use newtypes for collider, rigid-body and joint handles. 2021-01-20 16:33:42 +01:00
Crozet Sébastien
2231d0f6ea Add gravity scaling to rigid-bodies. 2021-01-06 18:09:21 +01:00
Crozet Sébastien
aa61fe65e3 Add support of 64-bits reals. 2021-01-04 15:14:25 +01:00
Crozet Sébastien
aada91966a Add a RigidBody::set_mass_properties method. 2020-12-02 11:26:20 +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
391bcf372a Fix collider insertion/removal tracking. 2020-11-26 11:41:54 +01:00
Crozet Sébastien
7541108746 Make the RigidBodyChanges values more readable. 2020-11-25 16:34:43 +01:00
Crozet Sébastien
2d4e14b869 Properly track some user-initiatied rigid-body modifications. 2020-11-25 16:28:49 +01:00
Crozet Sébastien
5ce3606582 Add explicit wake_up parameter to method setting the position and velocity of a rigid-body. 2020-11-19 18:13:39 +01:00
Crozet Sébastien
49fd861083 Allow a rigid-body to be initialized asleep. 2020-11-19 18:00:43 +01:00
Crozet Sébastien
c26c3af508 Start integrating salva into rapier. 2020-11-19 13:54:03 +01:00
Sébastien Crozet
acc3fed119 Merge pull request #34 from robert-hrusecky/rigid_body_wake_params
Add wake_up parameter to rigidbody methods
2020-11-19 11:12:59 +01:00
Crozet Sébastien
db337c5df6 Add damping support + demos. 2020-11-03 15:34:01 +01:00
Crozet Sébastien
71611d3e30 Reset the rigid-bodies internal links properly. 2020-11-03 15:08:06 +01:00
Crozet Sébastien
c6af248e66 Rename reset_internal_links -> reset_internal_references. 2020-11-03 14:45:50 +01:00
Crozet Sébastien
036a246141 Make cloning rigid-bodies and colliders more idiomatic.
Fix #53
2020-11-03 14:29:47 +01:00
Crozet Sébastien
bd6c0cb26c Fix typo. 2020-11-03 12:25:34 +01:00
Crozet Sébastien
32b6e122c1 Add the ability to set the mass and mass properties of the rigid-body built with the RigidBodyBuilder 2020-11-03 11:46:38 +01:00
Crozet Sébastien
49779e6c75 Add missing comment. 2020-10-27 10:54:07 +01:00
Crozet Sébastien
b5a1aaa4e5 Add a 128-bits user-data attached to colliders and rigid-bodies. 2020-10-27 10:48:31 +01:00
Crozet Sébastien
947c4813c9 Complete the pfm/pfm contact generator. 2020-10-19 16:52:08 +02:00
Robert Hrusecky
e9e4ca2c43 Fix review comments 2020-10-12 15:59:07 -05:00