Update CHANGELOG

This commit is contained in:
Sébastien Crozet
2022-10-02 18:30:26 +02:00
parent 9a4afcc43e
commit f7bec3c49c
3 changed files with 24 additions and 2 deletions

View File

@@ -1,8 +1,28 @@
## Unreleased ## Unreleased
### Added
- Add a **kinematic character** controller implementation. See the `control` module. The character controller currently
supports the following features:
- Slide on uneven terrains
- Interaction with dynamic bodies.
- Climb stairs automatically.
- Automatically snap the body to the floor when going downstairs.
- Prevent sliding up slopes that are too steep
- Prevent sliding down slopes that are not steep enough
- Interactions with moving platforms.
- Report information on the obstacles it hit on its path.
- Implement `serde` serialization/deserialization for `CollisionEvents` when the `serde-serialize` feature is enabled
### Modified ### Modified
- The methods `Collider::set_rotation`, `RigidBody::set_rotation`, and `RigidBody::set_next_kinematic_rotation` now - The methods `Collider::set_rotation`, `RigidBody::set_rotation`, and `RigidBody::set_next_kinematic_rotation` now
take a rotation (`UnitQuaternion` or `UnitComplex`) instead of a vector/angle. take a rotation (`UnitQuaternion` or `UnitComplex`) instead of a vector/angle.
- The method `QueryFilter::exclude_dynamic` is now a static method (the `self` argument was removed).
- The `QueryPipeline::cast_shape` method has a new argument `stop_at_penertation`. If set to `false`, the linear
shape-cast wont immediately stop if the shape is penetrating another shape at its starting point **and** its
trajectory is such that its on a path to exist that penetration state.
- The `InteractionGroups` is now a set of explicit bit flags instead of a raw `u32`.
- The world-space mass properties of rigid-bodies are now updated automatically whenever the user changes their
position.
## v0.14.0 (09 July 2022) ## v0.14.0 (09 July 2022)
### Fixed ### Fixed

View File

@@ -203,7 +203,6 @@ pub mod math {
/// Prelude containing the common types defined by Rapier. /// Prelude containing the common types defined by Rapier.
pub mod prelude { pub mod prelude {
// pub use crate::controller::*;
pub use crate::dynamics::*; pub use crate::dynamics::*;
pub use crate::geometry::*; pub use crate::geometry::*;
pub use crate::math::*; pub use crate::math::*;

View File

@@ -696,6 +696,9 @@ impl QueryPipeline {
/// * `shape` - The shape to cast. /// * `shape` - The shape to cast.
/// * `max_toi` - The maximum time-of-impact that can be reported by this cast. This effectively /// * `max_toi` - The maximum time-of-impact that can be reported by this cast. This effectively
/// limits the distance traveled by the shape to `shapeVel.norm() * maxToi`. /// limits the distance traveled by the shape to `shapeVel.norm() * maxToi`.
/// * `stop_at_penetration` - If set to `false`, the linear shape-cast wont immediately stop if
/// the shape is penetrating another shape at its starting point **and** its trajectory is such
/// that its on a path to exist that penetration state.
/// * `filter`: set of rules used to determine which collider is taken into account by this scene query. /// * `filter`: set of rules used to determine which collider is taken into account by this scene query.
pub fn cast_shape<'a>( pub fn cast_shape<'a>(
&self, &self,