bevy_xpbd
bevy_xpbd copied to clipboard
2D and 3D physics engine based on Extended Position Based Dynamics for Bevy.
All the `bevy_xpbd` components I'm using implement `PartialEq` except for `Collider`. Having `PartialEq` is really useful for various netcode bits that check what's changed in generic systems. `Collider` is a...
We should make it possible to configure the default values used for friction and restitution. It's annoying to set each body's friction separately if your world is full of ice,...
# Objective Allow to set ignored collisions per entity. ## Solution Added an `IgnoredCollisions` component which is checked in the broad phase to filter out ignored collisions before any detection...
# Objective - https://github.com/Jondolf/avian/issues/438 ## Solution - Introduce a basic collide and slide implementation for a new Kinematic Character Controller example entitled `kinematic_character_cas_3d`. --- ## Changelog > **Note**: You can...
# Objective The first-order approximations to quaternion rotations were wrong in a couple of places - rather than the `angular velocity * dt/2` quaternions being purely imaginary they were being...
# Objective I think that #485 wasn't quite the right fix for #474 - applying locked axes to an inertia tensor zeros out one or more of its rows, making...
Copying this [from a discussion we had a while ago on Discord](https://discord.com/channels/691052431525675048/1124043933886976171/1254029309216161802), [this other list](https://discord.com/channels/691052431525675048/1124043933886976171/1243115219757174824), and a [discussion resulting from me creating this issue](https://discord.com/channels/691052431525675048/1124043933886976171/1263156705697464363) While Avian is currently not ready...
I created a physics entity and simply forgot to use transform bundle instead of transform. Position and Transform do not sync. It took me almost an hour to work out...
Per my reasoning [here](https://discord.com/channels/691052431525675048/1124043933886976171/1270344315633406002), I personally believe the following to provide the best API: ```rust pub fn plugin(app: &mut App) { app.add_systems(Startup, spawn_zone); app.observe(on_character_entered_zone); } #[derive(Event, CollisionEvent)] struct CharacterEnteredZone {...