Age | Commit message (Collapse) | Author |
|
(cherry picked from commit 7b30d7da51e40a69b464e501dbc02fcaa99deb5b)
|
|
|
|
Warn against using non-uniform scale for 3D physics (in the editor and class reference)
|
|
- RigidBody2D
- PhysicsDirectBodyState2D
- RigidBody3D
- PhysicsDirectBodyState3D
|
|
Using non-uniform scale is known to cause many issues.
Add warnings to the editor and to the class reference.
Also remove the warning from SoftBody3D since it is
not relevant there: it simulates in global space.
|
|
|
|
|
|
Changes:
-Added support for custom inertia and center of mass in 3D
-Added support for custom center of mass in 2D
-Calculated center of mass from shapes in 2D (same as in 3D)
-Fixed mass properties calculation with disabled shapes in 2D/3D
-Removed first_integration which is not used in 2D and doesn't seem to
make a lot of sense (prevents omit_force_integration to work during the
first frame)
-Support for custom inertia on different axes for RigidBody3D
|
|
Instead of having a physics node named Static that can be either Static
or Kinematic, AnimatableBody is added again as a separate node:
-Inherited from StaticBody to make its usage clearer
-Still separated from CharacterBody to make its usage more focused
Properly implemented constant velocity for kinematic bodies in godot
physics servers (induced velocity without actually moving).
Also updated description for the different physics nodes to make their
usage clearer.
|
|
For the time being we don't support writing a description for those, preferring
having all details in the method's description.
Using self-closing tags saves half the lines, and prevents contributors from
thinking that they should write the argument or return documentation there.
|
|
|
|
Does the same thing as simulate motion from RigidBody in Kinematic mode,
and CharacterBody (previously KinematicBody).
Added support for constant linear/angular velocity with kinematic_motion
in StaticBody, which moves the body in physics.
Updated documentation for StaticBody and CharacterBody to describe their
functionalities more accurately.
|
|
MODE_DYNAMIC instead of MODE_RIGID
MODE_DYNAMIC_LOCKED instead of MODE_CHARACTER
No more special case for sleeping behavior for MODE_DYNAMIC_LOCKED
(MODE_CHARACTER was forcing the body not to sleep, which is redundant
with can_sleep and wasn't done in Bullet).
|
|
PhysicsBody now has methods move_and_collide/test_move and needed
properties for these methods: safe margin, locked axes (3D only).
Moved collision_exceptions from StaticBody to PhysicsBody for 3D
(same as 2D, and conforms to documentation).
RigidBody doesn't have test_motion method anymore, it's now redundant
with PhysicsBody.test_move.
|
|
Fix RigidBody3D.get_inverse_inertia_tensor() crash
|
|
|
|
|
|
|
|
Set Bullet collision shape index to zero when using a single shape or ConcavePolygonShape
|
|
|
|
or ConcavePolygonShape3D.
|
|
|
|
|
|
See #7996.
|
|
This makes them display in a nicer way in the editor help.
(The title will display instead of the full URL.)
|
|
|
|
|
|
|
|
Refactor physics force and impulse code to use (force, position) order
|
|
|
|
|
|
More details in Rigid Body add_force documentation
|
|
|
|
|
|
A few extra renames for classes which were missed in last week's PRs.
|