Commit Graph

468 Commits

Author SHA1 Message Date
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
dec3e4197f Small refactoring of the PhysicsPipeline. 2021-03-28 11:54:33 +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
710dd8d71e Fix bug wher ethe broad-phase could miss some contacts pairs. 2021-03-26 18:16:51 +01: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
Crozet Sébastien
326469a1df Fix the last few bugs and unbounded memory usage. 2021-03-17 09:34:56 +01:00
Crozet Sébastien
d82a675b46 Experiment with a smaller region power basis. 2021-03-13 19:32:27 +01:00
Crozet Sébastien
b2c0f62003 Some tunning of the way layers are attributed to a collider. 2021-03-13 19:19:12 +01:00
Crozet Sébastien
3a1502be74 First complete implementation of the hierarchical SAP. 2021-03-13 18:00:58 +01:00
Crozet Sébastien
a967ace7d4 Start implementing SAPLayer creation and insertion. 2021-03-08 18:27:06 +01:00
Crozet Sébastien
7983c25606 Start introducing SAP layers. 2021-03-08 15:32:04 +01:00
Crozet Sébastien
0b80bc827c Split the broad-phase code into multiple files. 2021-03-08 15:32:04 +01:00
Sébastien Crozet
4b637c66ca Merge pull request #149 from dimforge/fix_wasm_solver
Fix regression in the WASM version of the velocity solver.
2021-03-08 15:31:36 +01:00
Crozet Sébastien
8dab63bda1 Fix regression in the WASM version of the velocity solver. 2021-03-08 15:14:54 +01:00
Sébastien Crozet
808ea02672 Merge pull request #141 from EmbarkStudios/per-collider-mass-props
Per collider mass props
2021-03-08 10:38:31 +01:00
Emil Ernerfeldt
0370e7e37d Store either density or mass properties but not both 2021-03-08 10:12:12 +01:00
Sébastien Crozet
beaddea6f2 Merge pull request #146 from dimforge/implicit_friction_cone
Projection friction impulses on an implicit cone instead of a pyramid approximation.
2021-03-08 10:09:43 +01:00
Emil Ernerfeldt
05614dc471 docstring/spelling
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2021-03-08 10:04:28 +01:00
Emil Ernerfeldt
22a402983c docstring/spelling
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2021-03-08 10:04:21 +01:00
Emil Ernerfeldt
5154233176 docstring/spelling
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2021-03-08 10:04:13 +01:00
Emil Ernerfeldt
018cc23639 docstring/spelling
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2021-03-08 10:04:07 +01:00
Crozet Sébastien
152ada67ec Fix regression causing invalid contacts to be solved. 2021-03-07 17:34:54 +01:00
Crozet Sébastien
0e4393ba9e Reduce code duplication between the SIMD and non-SIMD contact solve and warmstart. 2021-03-07 17:15:32 +01:00
Crozet Sébastien
4cb1f5c692 Fix warning when targetting wasm. 2021-03-07 11:55:10 +01:00
Crozet Sébastien
bed47a82e7 Projection friction impulses on an implicit cone instead of a pyramidal approximation. 2021-03-07 11:44:19 +01:00
Emil Ernerfeldt
0909077094 Use Box<Option<MassProperties>> instead to save on memory 2021-03-05 12:04:27 +01:00
Emil Ernerfeldt
64af425227 Add ability to set MassProperties for each ColliderBuilder
Fix https://github.com/dimforge/rapier/issues/132
2021-03-05 11:57:08 +01:00
Sébastien Crozet
e7f805aea4 Merge pull request #140 from Waridley/joint_set_clone
Derive Clone for JointSet
2021-03-05 10:30:16 +01:00
Waridley
5592daf7fa Derive Clone for JointSet 2021-03-04 18:05:26 -06:00
Sébastien Crozet
5079d18bfb Merge pull request #139 from EmbarkStudios/body-mass-props
Call update_world_mass_properties from RigidBody::set_mass_properties
2021-03-04 10:07:26 +01:00
Emil Ernerfeldt
589c6ce834 Call update_world_mass_properties from RigidBody::set_mass_properties 2021-03-04 09:09:29 +01:00
Sébastien Crozet
514176fd1a Merge pull request #135 from EmbarkStudios/remove-unused-dependency
Remove unused dependency
2021-03-03 13:44:32 +01:00
Emil Ernerfeldt
2caa13ac67 Remove unused dependency serde_cbor 2021-03-03 11:31:58 +01:00
Emil Ernerfeldt
e3b9c5ad1c Make vec_map an optional dependency
I is only used in simd
2021-03-03 11:30:10 +01:00
Emil Ernerfeldt
ac22afc41b Remove unused dependency generational-arena 2021-03-03 11:22:17 +01:00
Crozet Sébastien
775910b214 Release testbed v0.6.1 2021-03-03 10:38:08 +01:00
Sébastien Crozet
a8216f5c24 Merge pull request #136 from dimforge/inertia_sqrt
Fix missing sqrt when setting the angular inertia of a RigidBodyBuilder
2021-03-03 10:35:54 +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
6247b0d48a Fix testbed compilation after the nalgebra release 0.6.1 2021-03-03 10:19:19 +01:00
Sébastien Crozet
a74097b4c6 Merge pull request #116 from EmbarkStudios/corrective-velocity-solve
Optional violation correction in velocity solver
2021-03-02 15:54:16 +01:00
Crozet Sébastien
449ed996d8 Release v0.6.1 2021-03-02 11:45:40 +01:00
Sébastien Crozet
a2da237a8a Merge pull request #130 from dimforge/snapshot_determinism
Fix determinism issue after restoring a snapshot.
2021-03-02 11:43:19 +01:00
Crozet Sébastien
e45342d365 Fix determinism issue after restoring a snapshot. 2021-03-02 11:24:56 +01:00
Crozet Sébastien
4cd6819fbe Release testbed v0.6.0 2021-03-01 16:45:03 +01:00
Sébastien Crozet
5d0aff0368 Merge pull request #129 from dimforge/v0.6.0
Release v0.6.0
2021-03-01 16:41:38 +01:00
Crozet Sébastien
5cc16419f3 Release v0.6.0 2021-03-01 16:27:08 +01:00
Emil Ernerfeldt
115bae172d fix the body-body revolute angle velocity erp 2021-02-26 11:06:29 +01:00
Emil Ernerfeldt
f517601e17 Final cleanup 2021-02-26 11:06:29 +01:00
Emil Ernerfeldt
54eae9bb7b simplify prismatic limits 2021-02-26 11:06:29 +01:00