reckfellENGINE

ChainIK3D

A SkeletonModifier3D to apply inverse kinematics to bone chains containing an arbitrary number of bones.

On this page
class ChainIK3DReckfellSharpInherits IKModifier3D

A SkeletonModifier3D to apply inverse kinematics to bone chains containing an arbitrary number of bones.

Base class of SkeletonModifier3D that automatically generates a joint list from the bones between the root bone and the end bone. Note: All the methods in this class take an index parameter. This parameter specifies which setting list entry to return if the IK has multiple entries (e.g. settings/<index>/root_bone_name).

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

Methods17

GetEndBoneint
# GetEndBone
C#
public int GetEndBone(int index);

Returns the end bone index of the bone chain.

Parameters
NameTypeDefault
indexint—
Returns int
GetEndBoneDirectionSkeletonModifier3D.BoneDirection
# GetEndBoneDirection
C#
public SkeletonModifier3D.BoneDirection GetEndBoneDirection(int index);

Returns the tail direction of the end bone of the bone chain when ChainIK3D.IsEndBoneExtended is true.

Parameters
NameTypeDefault
indexint—
Returns SkeletonModifier3D.BoneDirection
GetEndBoneLengthfloat
# GetEndBoneLength
C#
public float GetEndBoneLength(int index);

Returns the end bone tail length of the bone chain when ChainIK3D.IsEndBoneExtended is true.

Parameters
NameTypeDefault
indexint—
Returns float
GetEndBoneNamestring
# GetEndBoneName
C#
public string GetEndBoneName(int index);

Returns the end bone name of the bone chain.

Parameters
NameTypeDefault
indexint—
Returns string
GetJointBoneint
# GetJointBone
C#
public int GetJointBone(int index, int joint);

Returns the bone index at joint in the bone chain's joint list.

Parameters
NameTypeDefault
indexint—
jointint—
Returns int
GetJointBoneNamestring
# GetJointBoneName
C#
public string GetJointBoneName(int index, int joint);

Returns the bone name at joint in the bone chain's joint list.

Parameters
NameTypeDefault
indexint—
jointint—
Returns string
GetJointCountint
# GetJointCount
C#
public int GetJointCount(int index);

Returns the joint count of the bone chain's joint list.

Parameters
NameTypeDefault
indexint—
Returns int
GetRootBoneint
# GetRootBone
C#
public int GetRootBone(int index);

Returns the root bone index of the bone chain.

Parameters
NameTypeDefault
indexint—
Returns int
GetRootBoneNamestring
# GetRootBoneName
C#
public string GetRootBoneName(int index);

Returns the root bone name of the bone chain.

Parameters
NameTypeDefault
indexint—
Returns string
IsEndBoneExtendedbool
# IsEndBoneExtended
C#
public bool IsEndBoneExtended(int index);

Returns true if the end bone is extended to have a tail.

Parameters
NameTypeDefault
indexint—
Returns bool
SetEndBonevoid
# SetEndBone
C#
public void SetEndBone(int index, int bone);

Sets the end bone index of the bone chain.

Parameters
NameTypeDefault
indexint—
boneint—
SetEndBoneDirectionvoid
# SetEndBoneDirection
C#
public void SetEndBoneDirection(int index, SkeletonModifier3D.BoneDirection boneDirection);

Sets the end bone tail direction of the bone chain when ChainIK3D.IsEndBoneExtended is true.

Parameters
NameTypeDefault
indexint—
boneDirectionSkeletonModifier3D.BoneDirection—
SetEndBoneLengthvoid
# SetEndBoneLength
C#
public void SetEndBoneLength(int index, float length);

Sets the end bone tail length of the bone chain when ChainIK3D.IsEndBoneExtended is true.

Parameters
NameTypeDefault
indexint—
lengthfloat—
SetEndBoneNamevoid
# SetEndBoneName
C#
public void SetEndBoneName(int index, string boneName);

Sets the end bone name of the bone chain. Note: The end bone must be the root bone or a child of the root bone. If they are the same, the tail must be extended by ChainIK3D.SetExtendEndBone to modify the bone.

Parameters
NameTypeDefault
indexint—
boneNamestring—
SetExtendEndBonevoid
# SetExtendEndBone
C#
public void SetExtendEndBone(int index, bool enabled);

If enabled is true, the end bone is extended to have a tail. The extended tail config is allocated to the last element in the joint list. In other words, if you set enabled to false, the config of the last element in the joint list has no effect in the simulated result.

Parameters
NameTypeDefault
indexint—
enabledbool—
SetRootBonevoid
# SetRootBone
C#
public void SetRootBone(int index, int bone);

Sets the root bone index of the bone chain.

Parameters
NameTypeDefault
indexint—
boneint—
SetRootBoneNamevoid
# SetRootBoneName
C#
public void SetRootBoneName(int index, string boneName);

Sets the root bone name of the bone chain.

Parameters
NameTypeDefault
indexint—
boneNamestring—
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.