Improved logic for CharacterBody collision recovery depth
Allows 2D character controller to work without applying gravity when touching the ground (also more safely in 3D), and collision detection is more flexible with different safe margin values. Character body motion changes in 2D and 3D: -Recovery only for depth > min contact depth to help with collision detection consistency (rest info could be lost if recovery was too much) -Adaptive min contact depth (based on margin) instead of space parameter Extra CharacterBody changes: -2D: apply changes made in 3D for stop on slope and floor snap that help fixing some jittering cases -3D: fix minor inconsistencies in stop on slope and floor snap logic
This commit is contained in:
parent
c1e6c2c49a
commit
bf523a2b2a
14 changed files with 49 additions and 49 deletions
|
|
@ -670,7 +670,6 @@ void PhysicsServer2D::_bind_methods() {
|
|||
BIND_ENUM_CONSTANT(SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD);
|
||||
BIND_ENUM_CONSTANT(SPACE_PARAM_BODY_TIME_TO_SLEEP);
|
||||
BIND_ENUM_CONSTANT(SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS);
|
||||
BIND_ENUM_CONSTANT(SPACE_PARAM_TEST_MOTION_MIN_CONTACT_DEPTH);
|
||||
|
||||
BIND_ENUM_CONSTANT(SHAPE_WORLD_BOUNDARY);
|
||||
BIND_ENUM_CONSTANT(SHAPE_SEPARATION_RAY);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue