reckfellENGINE

RetargetModifier3D

A modifier to transfer parent skeleton poses (or global poses) to child skeletons in model space with different rests.

On this page
class RetargetModifier3DReckfellSharpInherits SkeletonModifier3D

A modifier to transfer parent skeleton poses (or global poses) to child skeletons in model space with different rests.

Retrieves the pose (or global pose) relative to the parent Skeleton's rest in model space and transfers it to the child Skeleton. This modifier rewrites the pose of the child skeleton directly in the parent skeleton's update process. This means that it overwrites the mapped bone pose set in the normal process on the target skeleton. If you want to set the target skeleton bone pose after retargeting, you will need to add a SkeletonModifier3D child to the target skeleton and thereby modify the pose. Note: When the RetargetModifier3D.UseGlobalPose is enabled, even if it is an unmapped bone, it can cause visual problems because the global pose is applied ignoring the parent bone's pose if it has mapped bone children. See also RetargetModifier3D.UseGlobalPose.

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

Constructors1

RetargetModifier3DConstructor
# RetargetModifier3D
C#
public RetargetModifier3D();

Properties4

CopyBoneSkinScaleProperty
# CopyBoneSkinScale
C#
public bool CopyBoneSkinScale { get; set; }

If true, copies Skeleton3D.GetBoneSkinScale of the source skeleton's bones to the child skeletons' mapped bones. If false, the skin scale of the child skeletons' mapped bones are reset to Vector3(1, 1, 1) once and will not be overwritten after that. Note: If you want to use Skeleton3D.SetBoneSkinScale on a child skeleton's mapped bone, set this to false. Even if you are not using Skeleton3D.SetBoneSkinScale with parent skeleton, Vector3(1, 1, 1) will always be set for the child skeletons' mapped bones.

EnableProperty
# Enable
C#
public RetargetModifier3D.TransformFlag Enable { get; set; }

Flags to control the process of the transform elements individually when RetargetModifier3D.UseGlobalPose is disabled.

ProfileProperty
# Profile
C#
public SkeletonProfile Profile { get; set; }

SkeletonProfile for retargeting bones with names matching the bone list.

UseGlobalPoseProperty
# UseGlobalPose
C#
public bool UseGlobalPose { get; set; }

If false, in case the target skeleton has fewer bones than the source skeleton, the source bone parent's transform will be ignored. Instead, it is possible to retarget between models with different body shapes, and position, rotation, and scale can be retargeted separately. If true, retargeting is performed taking into account global pose. In case the target skeleton has fewer bones than the source skeleton, the source bone parent's transform is taken into account. However, bone length between skeletons must match exactly, if not, the bones will be forced to expand or shrink. This is useful for using dummy bone with length 0 to match postures when retargeting between models with different number of bones.

Methods14

GetEnableFlagsRetargetModifier3D.TransformFlag
# GetEnableFlags
C#
public RetargetModifier3D.TransformFlag GetEnableFlags();
Returns RetargetModifier3D.TransformFlag
GetProfileSkeletonProfile
# GetProfile
C#
public SkeletonProfile GetProfile();
Returns SkeletonProfile
IsCopyingBoneSkinScalebool
# IsCopyingBoneSkinScale
C#
public bool IsCopyingBoneSkinScale();
Returns bool
IsPositionEnabledbool
# IsPositionEnabled
C#
public bool IsPositionEnabled();

Returns true if RetargetModifier3D.Enable has RetargetModifier3D.TransformFlag.Position.

Returns bool
IsRotationEnabledbool
# IsRotationEnabled
C#
public bool IsRotationEnabled();

Returns true if RetargetModifier3D.Enable has RetargetModifier3D.TransformFlag.Rotation.

Returns bool
IsScaleEnabledbool
# IsScaleEnabled
C#
public bool IsScaleEnabled();

Returns true if RetargetModifier3D.Enable has RetargetModifier3D.TransformFlag.Scale.

Returns bool
IsUsingGlobalPosebool
# IsUsingGlobalPose
C#
public bool IsUsingGlobalPose();
Returns bool
SetCopyBoneSkinScalevoid
# SetCopyBoneSkinScale
C#
public void SetCopyBoneSkinScale(bool enabled);
Parameters
NameTypeDefault
enabledbool—
SetEnableFlagsvoid
# SetEnableFlags
C#
public void SetEnableFlags(RetargetModifier3D.TransformFlag enableFlags);
Parameters
NameTypeDefault
enableFlagsRetargetModifier3D.TransformFlag—
SetPositionEnabledvoid
# SetPositionEnabled
C#
public void SetPositionEnabled(bool enabled);

Sets RetargetModifier3D.TransformFlag.Position into RetargetModifier3D.Enable.

Parameters
NameTypeDefault
enabledbool—
SetProfilevoid
# SetProfile
C#
public void SetProfile(SkeletonProfile profile);
Parameters
NameTypeDefault
profileSkeletonProfile—
SetRotationEnabledvoid
# SetRotationEnabled
C#
public void SetRotationEnabled(bool enabled);

Sets RetargetModifier3D.TransformFlag.Rotation into RetargetModifier3D.Enable.

Parameters
NameTypeDefault
enabledbool—
SetScaleEnabledvoid
# SetScaleEnabled
C#
public void SetScaleEnabled(bool enabled);

Sets RetargetModifier3D.TransformFlag.Scale into RetargetModifier3D.Enable.

Parameters
NameTypeDefault
enabledbool—
SetUseGlobalPosevoid
# SetUseGlobalPose
C#
public void SetUseGlobalPose(bool useGlobalPose);
Parameters
NameTypeDefault
useGlobalPosebool—

RetargetModifier3D.TransformFlag

ValueDescription
All = 7

If set, allows to retarget the position/rotation/scale.

Position = 1

If set, allows to retarget the position.

Rotation = 2

If set, allows to retarget the rotation.

Scale = 4

If set, allows to retarget the scale.

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.