reckfellENGINE

SkeletonModifier3D

A node that may modify a Skeleton3D's bones.

On this page
class SkeletonModifier3DReckfellSharpInherits Entity3D

A node that may modify a Skeleton3D's bones.

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.

Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.

Constructors1

SkeletonModifier3DConstructor
# SkeletonModifier3D
C#
public SkeletonModifier3D();

Properties2

ActiveProperty
# Active
C#
public bool Active { get; set; }

If true, the SkeletonModifier3D will be processing.

InfluenceProperty
# Influence
C#
public float Influence { get; set; }

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.

Methods9

GetInfluencefloat
# GetInfluence
C#
public float GetInfluence();
Returns float
GetSkeletonSkeleton3D
# GetSkeleton
C#
public Skeleton3D GetSkeleton();

Returns the parent Skeleton3D node if it exists. Otherwise, returns null.

Returns Skeleton3D
IsActivebool
# IsActive
C#
public bool IsActive();
Returns bool
SetActivevoid
# SetActive
C#
public void SetActive(bool active);
Parameters
NameTypeDefault
activebool—
SetInfluencevoid
# SetInfluence
C#
public void SetInfluence(float influence);
Parameters
NameTypeDefault
influencefloat—
_ProcessModificationvoid · Deprecated
# _ProcessModification
C#
public virtual void _ProcessModification();

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. SkeletonModifier3D._ProcessModification must not apply SkeletonModifier3D.Influence to bone poses because the Skeleton3D automatically applies influence to all bone poses set by the modifier.

_ProcessModificationWithDeltavoid
# _ProcessModificationWithDelta
C#
public virtual void _ProcessModificationWithDelta(double delta);

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. SkeletonModifier3D._ProcessModificationWithDelta must not apply SkeletonModifier3D.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 Entity._Process and Entity._PhysicsProcess with delta is 0.0, since the modification should be processed immediately after initialization of the Skeleton3D.

Parameters
NameTypeDefault
deltadouble—
_SkeletonChangedvoid
# _SkeletonChanged
C#
public virtual void _SkeletonChanged(Skeleton3D oldSkeleton, Skeleton3D newSkeleton);

Called when the skeleton is changed.

Parameters
NameTypeDefault
oldSkeletonSkeleton3D—
newSkeletonSkeleton3D—
_ValidateBoneNamesvoid
# _ValidateBoneNames
C#
public virtual void _ValidateBoneNames();

Called when bone names and indices need to be validated, such as when entering the scene tree or changing skeleton.

Signals and events1

ModificationProcessedEvent
# ModificationProcessed
C#
public event Action ModificationProcessed;

Notifies when the modification have been finished. Note: If you want to get the modified bone pose by the modifier, you must use Skeleton3D.GetBonePose or Skeleton3D.GetBoneGlobalPose at the moment this signal is fired.

SkeletonModifier3D.BoneAxis

ValueDescription
MinusX = 1

Enumerated value for the -X axis.

MinusY = 3

Enumerated value for the -Y axis.

MinusZ = 5

Enumerated value for the -Z axis.

PlusX = 0

Enumerated value for the +X axis.

PlusY = 2

Enumerated value for the +Y axis.

PlusZ = 4

Enumerated value for the +Z axis.

SkeletonModifier3D.BoneDirection

ValueDescription
FromParent = 6

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

MinusX = 1

Enumerated value for the -X axis.

MinusY = 3

Enumerated value for the -Y axis.

MinusZ = 5

Enumerated value for the -Z axis.

PlusX = 0

Enumerated value for the +X axis.

PlusY = 2

Enumerated value for the +Y axis.

PlusZ = 4

Enumerated value for the +Z axis.

SkeletonModifier3D.RotationAxis

ValueDescription
All = 3

Enumerated value for the unconstrained rotation.

Custom = 4

Enumerated value for an optional rotation axis.

X = 0

Enumerated value for the rotation of the X axis.

Y = 1

Enumerated value for the rotation of the Y axis.

Z = 2

Enumerated value for the rotation of the Z axis.

SkeletonModifier3D.SecondaryDirection

ValueDescription
Custom = 7

Enumerated value for an optional axis.

MinusX = 2

Enumerated value for the -X axis.

MinusY = 4

Enumerated value for the -Y axis.

MinusZ = 6

Enumerated value for the -Z axis.

None = 0

Enumerated value for the case when the axis is undefined.

PlusX = 1

Enumerated value for the +X axis.

PlusY = 3

Enumerated value for the +Y axis.

PlusZ = 5

Enumerated value for the +Z axis.

Reckfell Engine documentationBack to top ↑
QUICK LINKSGetting startedEntity hierarchyC# & .NET 10Scenes and prefabs
Reckfell guides and full API K
reckfellENGINE
RECKFELL ACCOUNT

Sign in

Sign in to your Reckfell account.

One account for the entire Reckfell platform.