Class reference

SkeletonModifier3D

Inherits Node3D

A node that may modify a Skeleton3D's bones.

Description

SkeletonModifier3D retrieves a target Skeleton3D by having a Skeleton3D parent. If there is an AnimationMixer, a modification always performs after playback process of the AnimationMixer. This node should be used to implement custom IK solvers, constraints, or skeleton physics.

Properties

float influence = 1.0

Sets the influence of the modification. Note: This value is used by Skeleton3D to blend, so the SkeletonModifier3D should always apply only 100% of the result without interpolation.

Methods

void _process_modification_with_delta(float delta) virtual

Override this virtual method to implement a custom skeleton modifier. You should do things like get the Skeleton3D's current pose and apply the pose here. _process_modification_with_delta() must not apply influence to bone poses because the Skeleton3D automatically applies influence to all bone poses set by the modifier. delta is passed from parent Skeleton3D. See also Skeleton3D.advance(). Note: This method may be called outside Node._process() and Node._physics_process() with delta is 0.0, since the modification should be processed immediately after initialization of the Skeleton3D.

void _skeleton_changed(Skeleton3D old_skeleton, Skeleton3D new_skeleton) virtual

Called when the skeleton is changed.

void _validate_bone_names() virtual

Called when bone name and index need to be validated such as the timing of the entering tree or changing skeleton.

Signals

Constants

BONE_AXIS_PLUS_X = 0

Enum: BoneAxis

Enumerated value for the +X axis.

BONE_AXIS_MINUS_X = 1

Enum: BoneAxis

Enumerated value for the -X axis.

BONE_AXIS_PLUS_Y = 2

Enum: BoneAxis

Enumerated value for the +Y axis.

BONE_AXIS_MINUS_Y = 3

Enum: BoneAxis

Enumerated value for the -Y axis.

BONE_AXIS_PLUS_Z = 4

Enum: BoneAxis

Enumerated value for the +Z axis.

BONE_AXIS_MINUS_Z = 5

Enum: BoneAxis

Enumerated value for the -Z axis.

BONE_DIRECTION_PLUS_X = 0

Enum: BoneDirection

Enumerated value for the +X axis.

BONE_DIRECTION_MINUS_X = 1

Enum: BoneDirection

Enumerated value for the -X axis.

BONE_DIRECTION_PLUS_Y = 2

Enum: BoneDirection

Enumerated value for the +Y axis.

BONE_DIRECTION_MINUS_Y = 3

Enum: BoneDirection

Enumerated value for the -Y axis.

BONE_DIRECTION_PLUS_Z = 4

Enum: BoneDirection

Enumerated value for the +Z axis.

BONE_DIRECTION_MINUS_Z = 5

Enum: BoneDirection

Enumerated value for the -Z axis.

BONE_DIRECTION_FROM_PARENT = 6

Enum: BoneDirection

Enumerated value for the axis from a parent bone to the child bone.

SECONDARY_DIRECTION_NONE = 0

Enum: SecondaryDirection

Enumerated value for the case when the axis is undefined.

SECONDARY_DIRECTION_PLUS_X = 1

Enum: SecondaryDirection

Enumerated value for the +X axis.

SECONDARY_DIRECTION_MINUS_X = 2

Enum: SecondaryDirection

Enumerated value for the -X axis.

SECONDARY_DIRECTION_PLUS_Y = 3

Enum: SecondaryDirection

Enumerated value for the +Y axis.

SECONDARY_DIRECTION_MINUS_Y = 4

Enum: SecondaryDirection

Enumerated value for the -Y axis.

SECONDARY_DIRECTION_PLUS_Z = 5

Enum: SecondaryDirection

Enumerated value for the +Z axis.

SECONDARY_DIRECTION_MINUS_Z = 6

Enum: SecondaryDirection

Enumerated value for the -Z axis.

SECONDARY_DIRECTION_CUSTOM = 7

Enum: SecondaryDirection

Enumerated value for an optional axis.

ROTATION_AXIS_X = 0

Enum: RotationAxis

Enumerated value for the rotation of the X axis.

ROTATION_AXIS_Y = 1

Enum: RotationAxis

Enumerated value for the rotation of the Y axis.

ROTATION_AXIS_Z = 2

Enum: RotationAxis

Enumerated value for the rotation of the Z axis.

ROTATION_AXIS_ALL = 3

Enum: RotationAxis

Enumerated value for the unconstrained rotation.

ROTATION_AXIS_CUSTOM = 4

Enum: RotationAxis

Enumerated value for an optional rotation axis.

Tutorials

Source revision 4f5b14abade2
Connection interrupted. Reload×

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.