19 actions in the Physics 3D category.
Each block mirrors how the action appears in the editor's sidebar.
Accelerate
Physics
AcceleratePhysics 3D
Nodenot set|Direction(0.0, 0.0, 0.0)|Amount30.0
Pushes the body a little further in a direction every frame, adding to the speed it already carries instead of replacing it. With Amount = 30 toward a grapple point, the body builds up a swing and keeps it after the pull stops.
Input
Type
Default
Description
Node
Node
-
The body to push. Leave it empty to push this node.
Direction
Vector3
(0.0, 0.0, 0.0)
Which way to push. Only the direction is used, the length is ignored.
Gives a physics body a one-shot push, such as a jump or a boost. Best placed on enter so it fires once instead of every frame.
Input
Type
Default
Description
Node
Node
-
The body to kick. Leave it empty to kick this node.
Impulse
Vector3
(0.0, 0.0, 0.0)
The push to apply, in units times mass per second.
Offset
Vector3
(0.0, 0.0, 0.0)
Where the push is applied, relative to the center. Zero pushes through the center.
PhasesStartEvery FramePhysicsWorks onRigidBody3D
Apply Torque Impulse
Start
Apply Torque ImpulsePhysics 3D
Nodenot set|Torque(0.0, 0.0, 0.0)
Gives a physics body a one-shot spin around each axis, such as a flip. Best placed on enter so it fires once instead of every frame.
Input
Type
Default
Description
Node
Node
-
The body to spin. Leave it empty to spin this node.
Torque
Vector3
(0.0, 0.0, 0.0)
The spin to apply around each axis.
PhasesStartEvery FramePhysicsWorks onRigidBody3D
Cast Ray
Physics
Cast RayPhysics 3D
Nodenot set|From(0.0, 0.0, 0.0)|To(0.0, 0.0, 0.0)|Ignore Selftrue|→ Hit|→ Miss
Shoots an invisible line between two points and branches on whether it touched anything. On a hit it reports the node that was touched, the contact point and the surface normal.
Input
Type
Default
Description
Node
Node
-
The node the ray starts from. Leave it empty to start from this node.
From
Vector3
(0.0, 0.0, 0.0)
The global point the line starts at, usually the position of this node.
To
Vector3
(0.0, 0.0, 0.0)
The global point the line ends at.
Ignore Self
bool
true
True to skip the body of this node, so a line starting inside it does not hit it.
Output
Type
Description
Collider
Object
The node the line touched.
Point
Vector3
The global position where the line touched it.
Normal
Vector3
The direction the touched surface faces.
Branch
Goes to
Hit
Where to go when the line touches something.
Miss
Where to go when the line touches nothing.
PhasesStartEvery FramePhysicsWorks onNode3D
Freeze Body
Start
Freeze BodyPhysics 3D
not set
Brings a physics body fully to rest by zeroing its linear and angular velocity at once. This is what a reset or respawn needs so the body neither drifts nor spins.
Input
Type
Default
Description
Node
Node
-
The body to stop. Leave it empty to stop this node.
Answers whether the body hit a ceiling, from the contact of the last Move And Slide. It can branch on the answer or hand it to a field that takes a yes or no.
Input
Type
Default
Description
Node
Node
-
The body to check. Leave it empty to check this node.
Answers whether the body is standing on the floor, from the contact of the last Move And Slide. It can branch on the answer or hand it to a field that takes a yes or no.
Input
Type
Default
Description
Node
Node
-
The body to check. Leave it empty to check this node.
Answers whether the body is pressed against a wall, from the contact of the last Move And Slide. It can branch on the answer or hand it to a field that takes a yes or no.
Input
Type
Default
Description
Node
Node
-
The body to check. Leave it empty to check this node.
Output
Type
Description
Yes
bool
Where to store whether the body is against a wall.
Moves the body across the ground in a direction relative to where it is facing, leaving vertical velocity to gravity.
Input
Type
Default
Description
Node
Node
-
The body to move. Leave it empty to move this node.
Direction
Vector2
(0.0, 0.0)
Movement direction relative to the body, with x sideways and y forward.
Speed
float
6.0
How fast to move, in units per second.
PhasesEvery FramePhysicsWorks onCharacterBody3D
Push
Physics
PushPhysics 3D
Nodenot set|Direction(0.0, 0.0, 0.0)|Amount12.0
Shoves the body once, adding the whole Amount to its speed in one shot, while Accelerate adds Amount per second for as long as it runs. With Amount = 12 pointing away from an attacker it reads as knockback, and the same shove drives a jump pad or an explosion.
Input
Type
Default
Description
Node
Node
-
The body to push. Leave it empty to push this node.
Direction
Vector3
(0.0, 0.0, 0.0)
Which way to shove. Only the direction is used, the length is ignored.
Checks what a RayCast node is touching right now and branches on the result. It works with RayCast3D and RayCast2D. It reports what is there on every run, so When It Changes is the one that fires only on the frame the contact starts.
Input
Type
Default
Description
Ray
Node
-
The RayCast node to read, such as a RayCast3D or RayCast2D.
Output
Type
Description
Collider
Object
The node the ray hit.
Point
Vector3
The world position where the ray hit.
Normal
Vector3
The direction the hit surface faces.
Branch
Goes to
Hit
Where to go when the ray touches something.
Miss
Where to go when the ray touches nothing.
PhasesStartEvery FramePhysics
Set Angular Velocity
Physics
Set Angular VelocityPhysics 3D
Nodenot set|Velocity(0.0, 0.0, 0.0)
Sets the angular velocity (spin) of a physics body directly, in degrees per second around each axis. Zero stops the spin.
Input
Type
Default
Description
Node
Node
-
The body to spin. Leave it empty to spin this node.
Velocity
Vector3
(0.0, 0.0, 0.0)
The spin to set, in degrees per second around each axis. Zero stops the spin.