Sébastien Crozet
134f433903
feat: solver improvements + release v0.29.0 ( #876 )
...
* feat: solver improvements
* feat: add function to get/set whether gyroscopic forces are enabled on a rigid-body
* chore: switch to released versions of parry and wide instead of local patches
* fix cargo doc
* chore: typo fixes
* chore: clippy fix
* Release v0.29.0
* chore: more clippy fixes
2025-09-05 19:31:58 +02:00
Sébastien Crozet
95bd6fcfeb
feat: switch to the new Bvh from parry for the broad-phase ( #853 )
...
* feat: switch to the new Bvh from parry for the broad-phase
* chore: cargo fmt + update testbed
* chore: remove the multi-grid SAP broad-phase
* fix soft-ccd handling in broad-phase
* Fix contact cleanup in broad-phase after collider removal
* chore: clippy fixes
* fix CCD regression
* chore: update changelog
* fix build with the parallel feature enabled
* chore: remove the now useless broad-phase proxy index from colliders
* fix tests
2025-07-11 22:36:40 +02:00
Thierry Berger
2f9d9ba94b
Add partialeq to integrationparameters ( #801 )
2025-03-10 09:05:34 +01:00
Thierry Berger
01dd200152
ci: cargo doc step ( #671 )
2024-07-12 16:29:22 +02:00
Thierry Berger
3e8650f3a7
Fix delta_time being 0 resulting in incorrect simulation ( #660 )
...
* Add failing test
* fix tests
* better fix
* add changelog
* fix propagated to `contact_cfm_factor`
* PR feedback
* more PR feedbacks
2024-06-23 18:18:54 +02:00
Sébastien Crozet
cdec395d09
feat: rename cfm_factor, damping_ratio to contact_cfm_factor and contact_damping_ratio
2024-05-25 12:00:15 +02:00
Sébastien Crozet
fdd935dbf1
feat: make the constraints regularization coefficients configurable with angular frequency instead of explicit ERP
2024-05-25 12:00:15 +02:00
Sébastien Crozet
425b2fc83d
chore: misc typo fixes
2024-05-05 16:17:39 +02:00
Sébastien Crozet
0a9153e273
chore: clippy fixes
2024-04-30 23:10:46 +02:00
Sébastien Crozet
c079452a47
feat: add IntegrationParameters::length_unit to adjust internal threshold based on user-defined length units
2024-04-30 23:10:46 +02:00
Sébastien Crozet
f58b4f7c19
feat: add warmstarting to contact constraints resolution
2024-04-30 23:10:46 +02:00
Sébastien Crozet
de5e871cd1
chore: rework vertical stacks demo
2024-04-30 23:10:46 +02:00
Sébastien Crozet
3ddf2441ea
feat: add exact mlcp solver for pais of 2 constraints
2024-04-30 23:10:46 +02:00
Sébastien Crozet
da92e5c283
Fix clippy and enable clippy on CI
2024-01-27 17:13:08 +01:00
Sébastien Crozet
d1fc90c150
feat: rework solver parameters to make it easy to recover the old behaviors
2024-01-24 21:57:54 +01:00
Sébastien Crozet
9b87f06a85
feat: implement new "small-steps" solver + joint improvements
2024-01-21 21:02:27 +01: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
fd12d76102
Fix panic when the world is stepped with dt = 0
2022-04-28 13:04:14 +02:00
Sébastien Crozet
db6a8c526d
Fix warnings and add comments.
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
fb20d72ee2
Joint API and joint motors improvements
2022-03-20 21:49:16 +01:00
Nathan Stocks
4f9d21f4fd
derive Debug for IntegrationParameters
2022-02-24 15:35:35 -07: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
f74b8401ad
Implement multibody joints and the new solver
2022-01-02 16:58:36 +01:00
Crozet Sébastien
1bef66fea9
Add prelude + use vectors for setting linvel/translation in builders
2021-05-25 11:00:13 +02:00
Crozet Sébastien
0ecc302971
Some small performance improvements.
2021-04-01 10:11:32 +02:00
Crozet Sébastien
1b073e98b4
Remove the IntegrationParameters field we don't use.
2021-03-31 18:41:02 +02:00
Crozet Sébastien
ab876964a0
Revert the warmstart_correction_slope to its previous value.
2021-03-31 16:55:33 +02:00
Crozet Sébastien
80f487fd4a
Test to see how the warmstart correction affect the benchmarks.
2021-03-31 16:35:33 +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
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
Emil Ernerfeldt
4162aed2a0
Add params.velocity_based_erp_inv_dt() helper
2021-02-26 11:06:29 +01:00
Emil Ernerfeldt
21247a1236
Add restorative impulse in velocity solver
2021-02-26 11:06:29 +01:00
Sébastien Crozet
d31a327b45
Merge pull request #119 from dimforge/joint_drive
...
Add joint motors
2021-02-22 17:40:29 +01:00
Emil Ernerfeldt
287cd46295
Remove unused restitution_velocity_threshold parameter
2021-02-18 15:41:46 +01:00
Crozet Sébastien
de39a41faa
Implement non-linear position stabilization for the generic constraint.
2021-02-15 11:20:09 +01:00
Stephan Dilly
7e226cc50a
fix some typos in docs
2021-02-02 15:01:19 +01:00
Crozet Sébastien
cf52e01308
Merge branch 'master' into split_geom
...
# Conflicts:
# examples2d/sensor2.rs
# examples3d/sensor3.rs
# src/dynamics/integration_parameters.rs
# src/dynamics/solver/parallel_island_solver.rs
# src/dynamics/solver/velocity_constraint.rs
# src/dynamics/solver/velocity_ground_constraint.rs
# src_testbed/nphysics_backend.rs
# src_testbed/physx_backend.rs
# src_testbed/testbed.rs
2021-01-22 16:10:24 +01:00
Emil Ernerfeldt
315493ebfb
IntegrationParameters: deprectate dt() and inv_dt() methods
2021-01-22 13:38:59 +01:00
Emil Ernerfeldt
581d13edbd
Deprectate IntegrationParameters::new
2021-01-22 13:33:11 +01:00
Emil Ernerfeldt
95c6199a9a
Remove IntegrationParameters::inv_dt and make dt pub
2021-01-22 13:32:18 +01:00
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
aa61fe65e3
Add support of 64-bits reals.
2021-01-04 15:14:25 +01:00
Crozet Sébastien
2d0a888484
Make the query pipeline serializable.
2020-10-05 16:52:09 +02:00
Sébastien Crozet
754a48b7ff
First public release of Rapier.
2020-08-25 22:10:25 +02:00