Commit Graph

1205 Commits

Author SHA1 Message Date
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
Austin J. Garrett
552cfebab0 Fix shape modification not updating graphics in testbed (#708)
* Fix shape modification not updating graphics in testbed

* Add update collider to Testbed

* chore: lint shape_modifications3

* chore: simplify GraphicsManager::remove_collider_nodes

---------

Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
2025-01-08 18:03:01 +01:00
Thierry Berger
2ed1934756 Upgrade bevy 0.15 (#758)
* upgrade bevy 0.15

* use crate dependencies

* use puffin pr dependency

* suppress needless lifetimes

* fix compiler error due to merge

---------

Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
2025-01-08 17:59:56 +01:00
Chris Bacon
564f7b7348 Fix Nans from RevoluteJoint::angle() (#736)
Fixes #735
2025-01-08 17:47:13 +01:00
Thierry Berger
dc4bd24da8 Update to Parry 0.18 (#770)
* update to parry ~main

* use traverse_depth_first

* add example to test intersection

* rely on upstream PR rather than local

* re-enable profiler_ui for examples

* rely on official parry repository

* chore: switch back to the published version of parry

* chore: update changelog

* chore: remove dead code

* fix compilation of rapier3d-meshloader and rapier3d-urdf

* chore: cargo fmt

---------

Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
2025-01-08 17:16:34 +01:00
Thierry Berger
cf77b5bf57 Remove instant dependency in favor of web-time (#767) 2024-12-06 12:54:00 +01:00
Thierry Berger
93bd37d814 fix clippy needless lifetimes (#769)
+ ignore them for bevy where we often want explicitness
2024-12-05 15:55:12 +01:00
legendofa
bce786831c Fixed typo in link in CONTRIBUTING.md (#766) 2024-12-03 14:38:22 +01:00
Thierry Berger
510237cc29 Profiling support (#743) 2024-11-19 16:33:26 +01:00
Thierry Berger
ff79f4c674 Urdf rs (#745)
Co-authored-by: Tin Lai <tin@tinyiu.com>
2024-11-19 15:33:36 +01:00
Thierry Berger
684f3a3054 Fix character controller ground detection (#715) 2024-11-19 15:32:37 +01:00
Dragos Daian
513ab3d1fc Fixes default values for wasm32 for physics hooks (#740)
* Fixes default values for wasm32 for physics hooks

---------

Co-authored-by: Thierry Berger <contact@thierryberger.com>
2024-11-15 11:00:14 +01:00
Thierry Berger
71f65fe55a Use meshloader to support multiple file formats loading (#744)
Co-authored-by: Tin Lai <tin@tinyiu.com>
2024-11-12 09:02:55 +01:00
Pier Angelo Vendrame
0d791eb794 Fixed some typos. (#757) 2024-11-06 09:39:22 +01:00
Thierry Berger
9e1113c5c7 fix compilation for feature enhanced-determinism (#739) 2024-09-23 18:15:29 +02:00
Thierry Berger
76357e3588 Fix CharacterController max/min slope handling (#701) 2024-09-23 11:10:29 +02:00
Bruce Mitchener
e7e196d9f9 Improve capacity handling for ColliderSet, RigidBodySet. (#726)
These allow an application to reduce the cost of reallocation when
they know that a large number of colliders or rigid bodies will
be created.
2024-09-16 16:45:14 +02:00
Thierry Berger
c714ff81f2 ImpulseJointSet::get_mut option to wake up connected bodies (#716) 2024-09-13 10:48:56 +02:00
Thierry Berger
04058a111d update testbeds to bevy 0.14 (#723) 2024-09-06 16:15:34 +02:00
Sébastien Crozet
bedb12b88a Release rapier3d-stl and rapier3d-urdf v0.3.0 2024-09-03 21:49:14 +02:00
Thierry Berger
98f9199abc chore: add publish script for urdf and stl + unify all releases by de… (#727)
* chore: add publish script for urdf and stl + unify all releases by default

* better cross platform publish support

* publish in dry run within ci

* publish scripts better errors, abort if a publish fails, with an exit code.

* chore(rapier_urdf): fix warnings

* chore(rapier-urdf): typo fix

---------

Co-authored-by: Sébastien Crozet <developer@crozet.re>
2024-09-03 21:48:10 +02:00
Thierry Berger
58785ce257 chore: workspace lints now part of each crate. (#728) 2024-09-03 21:18:44 +02:00
Bruce Mitchener
983f8a3901 Fix pluralization in doc comment. (#725) 2024-08-30 11:53:46 +02:00
Viktor Szépe
3e058ae389 Improve typos configuration (#714) 2024-08-26 11:14:09 +02:00
Thierry Berger
b66452b6c5 Fix string serialization for broadphase multisap (regions) (#710)
* serialize regions as vec
2024-08-09 17:55:43 +02:00
Bruce Mitchener
ed133e1ea9 Fix more typos. (#712)
These are ones not found by `typos` for various reasons.
2024-08-09 14:31:08 +02:00
Thierry Berger
5542bc5dbd character controller: Fix some cases of grounded not being detected (#711)
character offset exxageration to 1.2
2024-08-09 11:54:28 +02:00
Aceeri
510686a906 InteractionGroups default memberships value is now GROUP_1 (#706)
Co-authored-by: Thierry Berger <contact@thierryberger.com>
2024-08-05 18:14:44 +02:00
Ben Harper
af3a26c99d Improve distant object panics in broad phase (#128)
Co-authored-by: Thierry Berger <contact@thierryberger.com>
2024-08-05 17:19:52 +02:00
Thierry Berger
7ff92b1cf5 Fix CI (#707)
Removes dead code + other rust 1.80 related fixes
2024-08-05 11:32:43 +02:00
Bruce Mitchener
617428e988 Use workspace lints to control unexpected_cfgs. (#682)
By using `workspace.lints`, we can configure lints once for
everything (and then inherit it into the various crates).

The lint configuration for `unexpected_cfgs` works in 1.80+
and warns otherwise.

Co-authored-by: Thierry Berger <contact@thierryberger.com>
2024-08-02 16:38:56 +02:00
Thierry Berger
364b5b7c37 Color visualization for grounded character controller (#705) 2024-08-02 11:49:45 +02:00
Julian Knodt
595b952c52 Update flags for testbed (#704) 2024-07-31 09:28:56 +02:00
Thierry Berger
50b6c1b7d8 forbid bellow (#703) 2024-07-29 17:29:14 +02:00