Age | Commit message (Collapse) | Author |
|
|
|
Added a parameter in test_body_motion to exclude attached objects from
collision, used to avoid collision with all TileMap tiles with moving
platform motion instead of just the one tile the character touches.
Same changes made in 3D for consistency, and handling potential similar
cases.
|
|
|
|
|
|
-Physics servers test body motion use a class to hold parameters instead
of multiple arguments to make it more readable and flexible since there
are many options
-Improved documentation for test body motion and kinematic collision
-Removed read-only properties for body motion results (not handled in
scripts, so they should be get_ methods only instead)
|
|
|
|
|
|
* Usage was always confusing for users
* The ability to generate a pyramid shape was moved to Camera3D
* SpringArm3D now casts using the camera pyramid shape if no shape is supplied.
|
|
Convert GLTF Document to use ImporterMeshInstance3D.
Add a GLTFDocument extension list and an extension for converting the importer mesh instance 3d to mesh instance 3d.
Use GLTF module when the editor tools are disabled.
Modified the render server to be less restrictive on matching blend arrays and have more logging.
Misc bugs with multimesh.
Always index the meshes.
|
|
|
|
Now matches the class names to be consistent between 2D and 3D and with
other node types.
|
|
Remove scene code in physics servers
|
|
Remove editor code in PhysicalBone3D
|
|
Replaced Mesh with mesh RID in Godot Physics 3D and Bullet.
|
|
_set_gizmo_move_joint is only used in PhysicalBone3DEditor, so the
editor plugin call can be done directly there.
|
|
|
|
Fix #53255 when a body gets stuck when it hits a descending platform in 2D/3D
|
|
|
|
|
|
Shape metadata was only used to get tile information when colliding with
tilemaps. It's not needed anymore since there's an API in tilemap using
body ids instead.
|
|
Fix motion direction in slope for CharacterBody3D
|
|
- More accurate sliding in slopes to keep input direction correct
- More accurate constant speed calculation
- Renamed linear_velocity to motion_velocity for clarity
- General code cleaning and simplifications
|
|
|
|
_update_kinematic_motion() shouldn't be called in the constructor
It's too early and causes a first call to set the body position to 0.
Then the second call to set the actual position triggers kinematic
motion, colliding with objects on the path to the initial position.
Side effect of sync to physics now enabled by default.
|
|
|
|
|
|
|
|
Clarify RigidDynamicBody modes
|
|
|
|
Physic API change: apply the delta in move and collide like move and slide
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
jmb462/missing-sname-macro-optimization-in-some-functions
|
|
|
|
|
|
In case the reference is stored in script, create a new instance to
avoid overriding the previous values.
Otherwise, re-use the reference as before to avoid extra allocations.
|
|
Co-authored-by: Camille Mohr-Daurat <pouleyketchoup@gmail.com>
|
|
|
|
|
|
The `out_of_range_mode` property is no longer used since audio mixing
was moved out of the various AudioStreamPlayer nodes.
|
|
RigidDynamicBody modes are replaced with several properties to make their
usage clearer:
-lock_rotation: disable body's rotation (instead of MODE_LOCKED)
-freeze: no gravity or forces (instead of MODE_STATIC and MODE_KINEMATIC)
-freeze_mode: Static (can be only teleported) or Kinematic (can be animated)
Also renamed MODE_DYNAMIC_LOCKED to MODE_DYNAMIC_LINEAR in the physics
servers.
|
|
|
|
Rename RigidBody to RigidDynamicBody and SoftBody to SoftDynamicBody
|
|
|
|
The icon was present in `editor/icons/`, but it was never implemented
in the editor gizmos code.
This also removes some unused gizmo drawing code (overridden methods
that are no longer called anywhere).
|
|
|