Commit Graph

1238 Commits

Author SHA1 Message Date
Sébastien Crozet
c1be3e8578 feat: documentation improvements (#884) 2025-10-17 12:59:19 +02:00
Sébastien Crozet
27b11b9d61 fix regressions with sleeping behavior of kinematic bodies (#885)
* fix kinematic bodies ignoring the wake_up flag when setting velocities

* fix: don’t allow kinematic bodies to fall asleep unless they velocities are at zero exactly.

* feat: add debug example for kinematic bodies sleep

* chore: update changelog

* chore: typo
2025-10-17 12:22:23 +02:00
Loki McKay
ae1d479857 Add serde derives to Pd, Pid and DynamicRaycastVehicle controllers (#883)
* Add serde derives to Pd, Pid and DynamicRaycastVehicle controllers

* Add Clone and Debug derives to DynamicRayCastVehicleController
2025-10-09 11:59:58 +02:00
Sébastien Crozet
3ac5ed4491 Release v0.30.0 (#880)
* Release v0.30.0

* fix 3d voxels example build
2025-10-03 18:51:57 +02:00
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
317322b31b feat: reduce the amount of duplicate work the broad-phase is doing for user changes and CCD + release v0.28.0 (#872)
* feat: reduce the amount of duplicate work the broad-phase is doing for user changes and CCD

* Release v0.28.0

* chore: fix warnings

* chore: clippy fixes

* chore: more clippy fixes
2025-08-08 18:15:34 +02:00
Tim Balsfulland
038eb34aba Remove accidental new dependencies (#871) 2025-08-07 18:16:38 +02:00
Sébastien Crozet
efa7e764ba Release v0.27.0 (#865) 2025-07-24 17:11:32 +02:00
Thierry Berger
f9c986428c revert character controller gravity being gravity dependent (from 822) (#857) 2025-07-24 16:36:31 +02:00
Nam Se Hyun
f4b659ed02 Replace crossbeam channel with std::sync::mpsc (#861)
* Replace crossbeam channel with std::sync::mpsc

- Replace all uses of crossbeam::channel with std::sync::mpsc
- Remove crossbeam dependency from all Cargo.toml files
- Update documentation to remove crossbeam references
- Use std::sync::mpsc::channel() instead of crossbeam::channel::unbounded()

Fixes #828

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Update mod.rs

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-24 16:31:59 +02:00
Thierry Berger
0f5b4a4d88 feat: changed some QueryPipeline API to be more library friendly (#863) 2025-07-24 16:21:55 +02:00
Sébastien Crozet
626512911b Release v0.27.0-beta.0 (#854) 2025-07-11 23:15:21 +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
Ryan H. Code
86a257d4f1 Fix NaN resulting from non-clamped input to simd_asin in angular motor solver (#840)
* Fix non-clamped input to simd_asin in motor_angular

* Fix implementation & cleanup

* Cleanup

* Fix formatting
2025-07-11 15:32:59 +02:00
Thierry Berger
9c9ba4570e testbed: add gravity control + character controller speed control (#822) 2025-07-11 15:31:58 +02:00
Pedro Pereira
ad41b3d071 Fix web_time usage for Timer (#851)
* Fix web_time usage for Timer

* Remove #[allow(dead_code)]
2025-07-11 15:29:43 +02:00
Sébastien Crozet
cd7fc6e11f Release v0.26.1 2025-05-23 18:34:35 +02:00
Sébastien Crozet
a3d983fbe9 feat: add ColliderSet::get_pair_mut and RigidBodySet::get_pair_mut 2025-05-23 18:34:35 +02:00
Sébastien Crozet
ef3662b3b1 chore: clippy fixes 2025-05-16 19:27:02 +02:00
Sébastien Crozet
9a76f9f893 chore: update CHANGELOG 2025-05-16 19:27:02 +02:00
Sébastien Crozet
d81584a089 Release v0.26.0 2025-05-16 19:27:02 +02:00
Sébastien Crozet
ef47848fba feat: update to parry 0.21 2025-05-16 19:27:02 +02:00
Sébastien Crozet
b798e1942d chore: clippy fixes 2025-05-02 15:16:43 +02:00
Sébastien Crozet
1ebc95e88a Release v0.25.1 2025-05-02 15:16:43 +02:00
Sébastien Crozet
4cf4524cc6 chore: add ccd test to voxels examples 2025-05-02 15:16:43 +02:00
Sébastien Crozet
f49d0206cb chore: make it easier to test ccd with linear vs. nonlinear shape-casting 2025-05-02 15:16:43 +02:00
Sébastien Crozet
0652b4592f chore: update to parry 0.20.1 2025-05-02 15:16:43 +02:00
Sébastien Crozet
0e4a5c8539 Release v0.25.0 (#827) 2025-04-24 13:43:32 +02:00
Sébastien Crozet
e44f636249 feat: add support for Voxels collider (#823)
* feat: start adding voxels support and some additional testbed demo settings

* feat: add support for parry’s new Voxels collider shape

* fix voxels demos

* feat: support rectangular voxels and additional voxels initialization

* chore: switch to parry 0.20

* chore: fix cargo doc

* Fix testbed build
2025-04-24 12:11:53 +02:00
Bruce Mitchener
1c67c5e7f2 Make MeshConverter enum derive Copy (#821) 2025-04-11 16:45:21 +02:00
Sébastien Crozet
ed7e6393b8 Release v0.24.0 (#820) 2025-04-10 12:44:58 +02:00
Bruce Mitchener
1077faba16 deps: Update bit-vec, downcast-rs, ordered-float, thiserror (#808) 2025-04-10 12:10:08 +02:00
Johannes
3855592447 Prevent underflow with saturating_sub(1) (#812) (#817) 2025-04-01 09:51:03 +02:00
Thierry Berger
176c3bae14 Fix user changes handling (#803)
* add failing test from @Johannes0021

* apply fix on update_positions

* apply fix on ColliderSet::iter_mut

* fix clippy..

* more complete test

* feat: refactor modified sets into a wrapper to avoid future mistakes

* chore: fix typos

---------

Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
2025-03-28 12:48:25 +01:00
Thierry Berger
d291041278 use enum variants rather than casting to u8 for comparisons (#781) 2025-03-28 12:19:42 +01:00
Thierry Berger
2f9d9ba94b Add partialeq to integrationparameters (#801) 2025-03-10 09:05:34 +01:00
Sébastien Crozet
a8f11b9b9d Release v0.23.1 (#806)
The changes on the testbed are breaking, so we need to wait for the next minor version bump in rapier to release it.
2025-03-05 22:54:41 +01:00
Sébastien Crozet
49fba6cd54 feat: rename AxisMask to AxesMask + enable LIN_Z only in 3D (#805) 2025-03-05 18:07:19 +01:00
Dragos Daian
c10c08f150 publish f64 version of testbed (#751) 2025-03-05 14:11:36 +01:00
Sébastien Crozet
108a2a18d6 feat: add PD and PID controller implementations (#804)
* feat: add a PID controller implementation

* feat: add small rigid-body utilities + test interpolation test

* fix: make scrolling weaker on macos

* feat: add the option to use the PID controller in the character controller demo.

* feat: add a stateless PD controller

* feat(rapier_testbed): cleanup & support PidController in 2D too

* chore: add comments for the PD and PID controllers

* chore: update changelog

* feat: rename PidErrors to PdErrors which is more accurate

* fix cargo doc

* chore: remove dead code

* chore: make test module non-pub
2025-03-05 14:06:49 +01:00
Thierry Berger
955795dfbb Fix clippy (#800) 2025-02-24 11:34:46 +01:00
Sébastien Crozet
5ca6ae9106 feat(rapier_testbed): autosave testbed configuration + add support for per-example settings (#799)
* feat(rapier_testbed): autosave testbed configuration + add support for per-example parameters

* feat(rapier_testbed): also save the camera position

* feat(rapier_testbed): improve ergonomics of example-specific settings

* chore: cargo fmt

* chore(rapier_testbed): small UI ergonomics improvement

* chore(rapier_testbed): clippy fixes
2025-02-21 17:52:46 +01:00
Thierry Berger
bf8e48e920 Incorrect narrow_phase collisions after using ColliderSet::set_parent (#742)
* reproduction for case 1 (no collision)

* test for wrong self intersection after Collider::set_parent

* dynamics: remove new parent from contact and intersection graph ; maybe should be removed from graph_indices too?

* parent testing at the same place a interaction group check, to avoid missing parent change

* add more asserts in test + more correct comments

* add changelog

* Update CHANGELOG.md

* chore: remove debug print statements

* chore: improve narrow-phase test to check for re-re-parenting

* fix: remove unneeded narrow-phase pair removal

---------

Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
2025-02-02 14:53:30 +01:00
Sébastien Crozet
7cfc21ad6e Release testbeds v0.23.1
This fixes a bug with mesh rendering
2025-02-02 12:32:05 +01:00
Sébastien Crozet
9d9cf44981 Release rapier3d-meshloader v0.4.0 (#794) 2025-02-02 12:11:27 +01:00
Thierry Berger
c4c549f21f fix mesh to use 3d mesh in 3d testbed (#790) 2025-01-20 15:30:21 +01:00
Thierry Berger
65f87d597b use hashset from parry (#716 follow up) (#788) 2025-01-17 16:06:06 +01:00
legendofa
b0e72bb79d Removed hardcoded values for DebugColor in various places (#774) 2025-01-13 09:09:21 +01:00
gak
4867586c8c Fix year to 2025 in changelog (#786) 2025-01-12 08:10:53 +01:00
Sébastien Crozet
f2efccfd58 Release v0.23.0 (#782) 2025-01-08 22:36:41 +01:00