description: Override this to perform game-thread work prior to non-game thread Update() being called

code: virtual void PreUpdate ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Propagate the Source Instances' properties to Target Instance

module: IKRig

code: virtual void PropagateInputProperties ( const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceInstance )


className: PropertyUpdateFunction

description: Cached functions used to update goals using custom properties to avoid looking for then when evaluating

code: typedef [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< void(const [UObject](API\Runtime\CoreUObject\UObject\UObject) *)> PropertyUpdateFunction


description: Force reinitialization

code: void SetProcessorNeedsInitialized()


description: Called to update the state of the graph relative to this node. Generally this should configure any weights (etc.) that could affect the poses that will need to be evaluated. This function is what usually executes EvaluateGraphExposedInputs. This can be called on any thread.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)(BlueprintInternalUseOnly) struct FAnimNode_IKRig : public [FAnimNode_CustomProperty](API\Runtime\Engine\Animation\FAnimNode_CustomProperty)

Alpha

type: float

description: Current strength of the skeletal control.

AlphaBoolBlend

type: FInputAlphaBool...

AlphaCurveName

type: FName

AlphaInputType

type: EAnimAlphaInput...

description: Alpha value handler

AlphaScaleBias

type: FInputScaleBias

AlphaScaleBiasClamp

type: FInputScaleBias...

bAlphaBoolEnabled

type: bool

bDriveWithSourceAsset

description: When true, goals will use the current transforms stored in the IK Rig Definition asset itself

bEnableDebugDraw

description: Toggle debug drawing of goals when node is selected.

bStartFromRefPose

description: Optionally ignore the input pose and start from the reference pose each solve

DebugScale

description: Adjust size of debug drawing.

Goals

type: TArray<FIKRigG...

description: The input goal transforms used by the IK Rig solvers.

RigDefinitionAsset

type: TObjectPtr<UIK...

description: The IK rig to use to modify the incoming source pose.

Source

type: FPoseLink

description: The input pose to start the IK solve relative to.


description: Called to cache any bones that this node needs to track (e.g. in aFBoneReference). This is usually called at startup when LOD switches occur. This can be called on any thread.

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: Called to evaluate local-space bones transforms according to the weights set up in Update(). You should implement either Evaluate or EvaluateComponentSpace, but not both of these. This can be called on any thread.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


description: Access to the runtime processor

code: [UIKRetargetProcessor](API\Plugins\IKRig\Retargeter\UIKRetargetProcessor) * GetRetargetProcessor() const


description: Override this to indicate thatPreUpdate()should be called on the game thread (usually to gather non-thread safe data) before Update() is called. Note that this is called at load on theUAnimInstanceCDO to avoid needing to call this at runtime. This is called on the game thread.

code: virtual bool HasPreUpdate() const


description: Called when the node first runs. If the node is inside a state machine or cached pose branch then this can be called multiple times. This can be called on any thread.

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)(BlueprintInternalUseOnly) struct FAnimNode_RetargetPoseFromMesh : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

bCopyCurves

description: Copy curves from SouceMeshComponent.

bSuppressWarnings

description: Toggle whether to print warnings about missing or incorrectly configured retarget configurations.

bUseAttachedParent

description: If SourceMeshComponent is not valid, and if this is true, it will look for attached parent as a source

CustomRetargetProfile

type: FRetargetProfil...

description: Connect a custom retarget profile to modify the retargeter's settings at runtime.

IKRetargeterAsset

description: Retarget asset to use.

SourceMeshComponent

type: TWeakObjectPtr<...

description: The Skeletal Mesh Component to retarget animation from.


description: Clear all the stored messages

code: void Clear() const


description: Get the name this log is currently outputting to


description: Get a list of messages that have been logged since lastClear()

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & GetErrors() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & GetMessages() const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FText](API\Runtime\Core\Internationalization\FText) > & GetWarnings() const


description: Log a warning message to display to user.

code: void LogError ( const [FText](API\Runtime\Core\Internationalization\FText) & Message ) const


description: Log a message to display to editor output log.

code: void LogInfo ( const [FText](API\Runtime\Core\Internationalization\FText) & Message ) const


code: void LogWarning ( const [FText](API\Runtime\Core\Internationalization\FText) & Message ) const


description: Set the name of the log to output messages to

code: void SetLogTarget ( const [FName](API\Runtime\Core\UObject\FName) InLogName, const [FText](API\Runtime\Core\Internationalization\FText) & LogLabel )


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


className: FIKRigModule

code: class FIKRigModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: GUID

description: The GUID for this custom version number.

code: static const [FGuid](API\Runtime\Core\Misc\FGuid) GUID;


className: Type

code: enum Type { BeforeCustomVersionWasAdded, RetargetPoseQuatPostMultiplied, ChainSettingsConvertedToStruct, VersionPlusOne, LatestVersion = VersionPlusOne - 1, }


className: FIKRigObjectVersion

description: Custom serialization version for backwards compatibility during de-serialization.

code: struct FIKRigObjectVersion


className: EBasicAxis

code: enum EBasicAxis { X, Y, Z, NegX, NegY, NegZ, }


className: ERetargetRotationMode

code: enum ERetargetRotationMode { Interpolated, OneToOne, OneToOneReversed, None, }


className: ERetargetSourceOrTarget

description: Which skeleton are we referring to?

code: enum ERetargetSourceOrTarget { Source, Target, }


className: ERetargetTranslationMode

code: enum ERetargetTranslationMode { None, GloballyScaled, Absolute, }


className: EWarpingDirectionSource

code: enum EWarpingDirectionSource { Goals, Chain, }


className: FChainDebugData

code: struct FChainDebugData

InputTransformEnd

type: FTransform


code: void DecodePose ( const [FRootRetargeter](API\Plugins\IKRig\Retargeter\FRootRetargeter) & RootRetargeter, const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & Settings, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & TargetBoneIndices, [FChainEncoderFK](API\Plugins\IKRig\Retargeter\FChainEncoderFK) & SourceChain, const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & TargetSkeleton, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InOutGlobalPose )


code: void InitializeIntermediateParentIndices ( const int32 RetargetRootBoneIndex, const int32 ChainRootBoneIndex, const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & TargetSkeleton )


code: void MatchPoleVector ( const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & Settings, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & TargetBoneIndices, [FChainEncoderFK](API\Plugins\IKRig\Retargeter\FChainEncoderFK) & SourceChain, const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & TargetSkeleton, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InOutGlobalPose )


className: FChainDecoderFK

code: struct FChainDecoderFK : public [FChainFK](API\Plugins\IKRig\Retargeter\FChainFK)


code: void EncodePose ( const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & SourceSkeleton, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & SourceBoneIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InSourceGlobalPose )


code: void TransformCurrentChainTransforms ( const FTransform & NewParentTransform )


code: static void FillTransformsWithLocalSpaceOfChain ( const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & Skeleton, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & BoneIndices, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutLocalTransforms )


className: FChainEncoderFK

code: struct FChainEncoderFK : public [FChainFK](API\Plugins\IKRig\Retargeter\FChainFK)

CurrentLocalTransforms

type: TArray< FTransf...


code: bool Initialize ( const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & Skeleton, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & InBoneIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InitialGlobalPose, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


code: void PutCurrentTransformsInRefPose ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & BoneIndices, const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & Skeleton, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InCurrentGlobalPose )


className: FChainFK

code: struct FChainFK

BoneIndices

type: TArray< int32 >

Params

type: TArray< float >


code: void DecodePose ( const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & Settings, const [FRootRetargeter](API\Plugins\IKRig\Retargeter\FRootRetargeter) & RootRetargeter, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), float > & SpeedValuesFromCurves, const float DeltaTime, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose )


code: void EncodePose ( const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & SourceInputGlobalPose )


code: bool InitializeSource ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & BoneIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & SourceInitialGlobalPose, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


code: bool InitializeTarget ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & BoneIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & TargetInitialGlobalPose, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


code: void SaveDebugInfo ( const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose )


className: FDecodedIKChain

code: struct FDecodedIKChain

EndEffectorPosition

type: FVector

EndEffectorRotation

type: FQuat


className: FChainRetargeterIK

code: struct FChainRetargeterIK

DebugData

type: FChainDebugData

PlantingSpringState

type: FVectorSpringSt...

Results

type: FDecodedIKChain

Source

type: FSourceChainIK

Target

type: FTargetChainIK


code: void AddToRootTranslationDelta ( const FVector & TranslationDelta )


code: const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), FQuat > & GetAllDeltaRotations() const


code: FQuat GetDeltaRotationForBone ( const [FName](API\Runtime\Core\UObject\FName) BoneName ) const


code: FVector GetRootTranslationDelta() const


code: void SetRootTranslationDelta ( const FVector & TranslationDelta )


code: void SetDeltaRotationForBone ( [FName](API\Runtime\Core\UObject\FName) BoneName, const FQuat & RotationDelta )


code: bool Initialize ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & SourceIndices, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & TargetIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & SourceGlobalPose, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & TargetGlobalPose, const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & TargetSkeleton )


code: void MatchPoleVector ( const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & Settings, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & SourceIndices, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & TargetIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & SourceGlobalPose, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutTargetGlobalPose, [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & TargetSkeleton )


className: FPoleVectorMatcher

code: struct FPoleVectorMatcher

TargetToSourceAngularOffsetAtRefPose

type: float


code: FResolvedBoneChain ( const [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) & BoneChain, const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & Skeleton, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutBoneIndices )


className: FResolvedBoneChain

description: Resolving anFBoneChainto an actual skeleton, used to validate compatibility and get all chain indices

code: struct FResolvedBoneChain

bEndIsStartOrChildOfStart

type: bool

description: Is the END bone equals or a child of the START bone?

bFoundEndBone

description: Does the END bone exist in the skeleton?

bFoundStartBone

description: Does the START bone exist in the skeleton?


code: void SortHierarchically ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & Skeleton )


code: FRetargetChainMap ( const [FName](API\Runtime\Core\UObject\FName) & TargetChain )


className: FRetargetChainMap

description: Deprecated* UseURetargetChainSettingsinstead.

SourceChain

type: FName


code: virtual bool Initialize ( const [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) & SourceBoneChain, const [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) & TargetBoneChain, const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & SourceSkeleton, const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & TargetSkeleton, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


className: FRetargetChainPair

code: struct FRetargetChainPair

Settings

type: FTargetChainSet...


className: FRetargetChainPairFK

code: struct FRetargetChainPairFK : public [FRetargetChainPair](API\Plugins\IKRig\Retargeter\FRetargetChainPair)

FKDecoder

type: FChainDecoderFK

FKEncoder

type: FChainEncoderFK

PoleVectorMatcher

type: FPoleVectorMatc...


className: FRetargetChainPairIK

code: struct FRetargetChainPairIK : public [FRetargetChainPair](API\Plugins\IKRig\Retargeter\FRetargetChainPair)

IKChainRetargeter

type: FChainRetargete...


className: FRetargetDebugData

code: struct FRetargetDebugData

StrideWarpingFrame

type: FTransform


className: FRetargetProfile

bApplyChainSettings

description: If true, the Chain Settings stored in this profile will be applied to the Retargeter (when plugged into the Retargeter).

bApplyGlobalSettings

description: If true, the global settings stored in this profile will be applied to the Retargeter (when plugged into the Retargeter).

bApplyRootSettings

description: If true, the root settings stored in this profile will be applied to the Retargeter (when plugged into the Retargeter).

bApplySourceRetargetPose

description: If true, the Source Retarget Pose specified in this profile will be applied to the Retargeter (when plugged into the Retargeter).

bApplyTargetRetargetPose

description: If true, the TARGET Retarget Pose specified in this profile will be applied to the Retargeter (when plugged into the Retargeter).

ChainSettings

type: TMap<FName,FT...

description: A (potentially sparse) set of setting overrides for the target chains (only applied when bApplyChainSettings is true).

GlobalSettings

type: FRetargetGlobal...

description: Retarget settings to control global behavior, like Stride Warping (not applied unless bApplyGlobalSettings is true)

RootSettings

type: FTargetRootSett...

description: Retarget settings to control behavior of the retarget root motion (not applied unless bApplyRootSettings is true)

SourceRetargetPoseName

description: Override the SOURCE Retarget Pose to use when this profile is active.

TargetRetargetPoseName

description: Override the TARGET Retarget Pose to use when this profile is active.


className: FRetargetGlobalSettings

bEnableFK

description: When false, limbs are not copied via FK.

bEnableIK

description: When false, IK is not applied as part of retargeter.

bEnableRoot

description: When false, the motion of the Retarget Root bone is not copied from the source.

bWarping

description: Enable IK Warping.

DirectionChain

description: When using the "Chain" option as a Direction Source, this defines the chain to use to determine the facing direction of the character.

DirectionSource

type: EWarpingDirecti...

description: Defines the source used to determine the forward direction as the character animates in world space.

ForwardDirection

type: EBasicAxis

description: The world space axis that represents the forward facing direction for your character.

SidewaysOffset

description: Range -+Inf.

WarpForwards

description: Range 0 to Inf.

WarpSplay

description: Range 0 to +Inf.


code: int32 FindBoneIndexByName ( const [FName](API\Runtime\Core\UObject\FName) InName ) const


code: void GenerateRetargetPose ( const [FName](API\Runtime\Core\UObject\FName) InRetargetPoseName, const [FIKRetargetPose](API\Plugins\IKRig\Retargeter\FIKRetargetPose) * InRetargetPose, const [FName](API\Runtime\Core\UObject\FName) RetargetRootBone )


code: int32 GetCachedEndOfBranchIndex ( const int32 InBoneIndex ) const


code: void GetChildrenIndices ( const int32 BoneIndex, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutChildren ) const


code: void GetChildrenIndicesRecursive ( const int32 BoneIndex, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutChildren ) const


code: FTransform GetGlobalRefPoseOfSingleBone ( const int32 BoneIndex, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose ) const


code: int32 GetParentIndex ( const int32 BoneIndex ) const


code: void Initialize ( [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * InSkeletalMesh, const [TArray](API\Runtime\Core\Containers\TArray)< [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) > & BoneChains, const [FName](API\Runtime\Core\UObject\FName) InRetargetPoseName, const [FIKRetargetPose](API\Plugins\IKRig\Retargeter\FIKRetargetPose) * RetargetPose, const [FName](API\Runtime\Core\UObject\FName) RetargetRootBone )


code: static FVector GetAxisVector ( const [EBasicAxis](API\Plugins\IKRig\Retargeter\EBasicAxis) & Axis )


code: bool IsParentOfChild ( const int32 PotentialParentIndex, const int32 ChildBoneIndex ) const


code: void UpdateGlobalTransformOfSingleBone ( const int32 BoneIndex, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InLocalPose, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutGlobalPose ) const


code: void UpdateGlobalTransformsBelowBone ( const int32 StartBoneIndex, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InLocalPose, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutGlobalPose ) const


code: void UpdateLocalTransformOfSingleBone ( const int32 BoneIndex, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutLocalPose, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose ) const


code: void UpdateLocalTransformsBelowBone ( const int32 StartBoneIndex, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutLocalPose, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalPose ) const


className: FRetargetSkeleton

code: struct FRetargetSkeleton

BoneNames

type: TArray<FName>

ParentIndices

type: TArray< int32 >

RetargetGlobalPose

type: TArray< FTransf...

SkeletalMesh

type: USkeletalMesh&...


code: void DecodePose ( [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutTargetGlobalPose )


code: void EncodePose ( const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & SourceGlobalPose )


code: FVector GetGlobalScaleVector() const


code: bool InitializeSource ( const [FName](API\Runtime\Core\UObject\FName) SourceRootBoneName, const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & SourceSkeleton, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


code: bool InitializeTarget ( const [FName](API\Runtime\Core\UObject\FName) TargetRootBoneName, const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & TargetSkeleton, [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) & Log )


className: FRootRetargeter

code: struct FRootRetargeter

Source

type: FRootSource

Target

type: FRootTarget


className: FRootSource

code: struct FRootSource

BoneName

type: FName

CurrentPosition

type: FVector

CurrentRotation

type: FQuat

InitialHeightInverse

type: float


className: FRootTarget

code: struct FRootTarget


className: FSourceChainIK

code: struct FSourceChainIK

PreviousEndPosition

description: Results after encoding...


className: FTargetChainIK

code: struct FTargetChainIK


code: bool operator== ( const [FTargetChainFKSettings](API\Plugins\IKRig\Retargeter\FTargetChainFKSettings) & Other ) const


className: FTargetChainFKSettings

EnableFK

type: bool

description: Whether to copy the shape of the chain from the source skeleton using the Rotation and Translation modes.

PoleVectorMatching

description: Range 0 to 1.

PoleVectorOffset

description: Range +/- 180. Default 0. An angular offset, in degrees, for the pole direction of the chain.

RotationAlpha

description: Range +/- infinity.

RotationMode

type: ERetargetRotati...

description: Determines how rotation is copied from the source chain to the target chain.

TranslationAlpha

description: Range +/- infinity.

TranslationMode

type: ERetargetTransl...

description: Determines how translation is copied from the source chain to the target chain.


code: bool operator== ( const [FTargetChainIKSettings](API\Plugins\IKRig\Retargeter\FTargetChainIKSettings) & Other ) const


className: FTargetChainIKSettings

bAffectedByIKWarping

description: Is this IK goal affected by the stride warping (in Global Settings).

BlendToSource

description: Range 0 to 1.

BlendToSourceWeights

description: Range 0 to 1.

EnableIK

description: Whether to modify the location of the IK goal on this chain.

Extension

description: Range 0 to 5.

ScaleVertical

description: Range +-Infinity. Default 1. Scales the vertical component of the IK goal's position.

StaticLocalOffset

description: Default 0, 0, 0. Apply a static local-space offset to IK goal position.

StaticOffset

description: Default 0, 0, 0. Apply a static global-space offset to IK goal position.

StaticRotationOffset

type: FRotator

description: Default 0, 0, 0. Apply a static local-space offset to IK goal rotation.


code: void CopySettingsFromAsset ( const [URetargetChainSettings](API\Plugins\IKRig\Retargeter\URetargetChainSettings) * AssetChainSettings )


code: bool operator== ( const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & Other ) const


code: bool operator== ( const [FTargetChainSpeedPlantSettings](API\Plugins\IKRig\Retargeter\FTargetChainSpeedPlantSettings) & Other ) const


className: FTargetChainSettings

FK

type: FTargetChainFKS...

description: All settings for FK retargeting of this chain. FK retargeting runs before the IK pass.

IK

type: FTargetChainIKS...

description: All settings controlling the IK Goal assigned to this chain.

SpeedPlanting

type: FTargetChainSpe...

description: All settings associated with planting IK goals based on the speed of the source.


className: FTargetChainSpeedPlantSettings

EnableSpeedPlanting

description: The name of the curve on the source animation that contains the speed of the end effector bone.

SpeedThreshold

description: Range 0 to 1000.

UnplantCriticalDamping

description: How much damping to apply to the spring (0 means no damping, 1 means critically damped which means no oscillation)

UnplantStiffness

description: How stiff the spring model is that smoothly pulls the IK position after unplanting (more stiffness means more oscillation around the target value)


code: void CopySettingsFromAsset ( const [URetargetRootSettings](API\Plugins\IKRig\Retargeter\URetargetRootSettings) * AssetChainSettings )


code: FVector GetAffectIKWeightVector() const


className: FTargetRootSettings

AffectIKHorizontal

description: Range 0 to 1.

AffectIKVertical

description: Range 0 to 1.

BlendToSource

description: Range 0 to 1.

BlendToSourceWeights

description: Per-axis weights for the Blend to Source.

RotationAlpha

description: Range 0 to 1.

RotationOffset

description: Applies a static local-space rotation offset to the retarget root.

ScaleHorizontal

description: Default 1. Scales the motion of the root position in the horizontal plane (X,Y).

ScaleVertical

description: Default 1. Scales the motion of the root position in the vertical direction (Z).

TranslationAlpha

description: Range 0 to 1.

TranslationOffset

description: Applies a static component-space translation offset to the retarget root.


code: void Initialize ( [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * InSkeletalMesh, const [TArray](API\Runtime\Core\Containers\TArray)< [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) > & BoneChains, const [FName](API\Runtime\Core\UObject\FName) InRetargetPoseName, const [FIKRetargetPose](API\Plugins\IKRig\Retargeter\FIKRetargetPose) * RetargetPose, const [FName](API\Runtime\Core\UObject\FName) RetargetRootBone )


description: ENDUObject.

code: static void DeclareConstructClasses ( [TArray](API\Runtime\Core\Containers\TArray)< [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) > & OutConstructClasses, const [UClass](API\Runtime\CoreUObject\UObject\UClass) * SpecificSubclass )


code: void UpdateGlobalTransformsAllNonRetargetedBones ( [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InOutGlobalPose )


code: void SetBoneIsRetargeted ( const int32 BoneIndex, const bool IsRetargeted )


className: FTargetSkeleton

code: struct FTargetSkeleton : public [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton)

IsBoneRetargeted

type: TArray< bool >

description: True for bones that are in a target chain that is ALSO mapped to a source chain ie, bones that are actually posed based on a mapped source chain


description: Get read-only access to the chain mapping.

code: const [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [URetargetChainSettings](API\Plugins\IKRig\Retargeter\URetargetChainSettings) > > & GetAllChainSettings() const


description: Get read-only access to the chain settings for a given chain (null if chain not in retargeter)

code: const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) * GetChainSettingsByName ( const [FName](API\Runtime\Core\UObject\FName) & TargetChainName ) const


description: Get read-only access to the chain map for a given chain (null if chain not in retargeter)

code: const [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [URetargetChainSettings](API\Plugins\IKRig\Retargeter\URetargetChainSettings) > GetChainMapByName ( const [FName](API\Runtime\Core\UObject\FName) & TargetChainName ) const


description: Returns the chain settings associated with a given target chain in an IK Retargeter Asset using the given profile name (optional)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetAsset) static [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) GetChainSettingsFromRetargetAsset ( const [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) * RetargetAsset, const [FName](API\Runtime\Core\UObject\FName) TargetChainName, const [FName](API\Runtime\Core\UObject\FName) OptionalProfileName )


description: Returns the chain settings associated with a given target chain in the supplied Retarget Profile.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetProfile) static [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) GetChainSettingsFromRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FName](API\Runtime\Core\UObject\FName) TargetChainName )


description: Returns the chain settings associated with a given Goal in an IK Retargeter Asset using the given profile name (optional)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetAsset) static [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) GetChainUsingGoalFromRetargetAsset ( const [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) * RetargetAsset, const [FName](API\Runtime\Core\UObject\FName) IKGoalName )


description: Get the current retarget profile (may be null)

code: const [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) * GetCurrentProfile() const


description: Get read-only access to a retarget pose.

code: const [FIKRetargetPose](API\Plugins\IKRig\Retargeter\FIKRetargetPose) * GetCurrentRetargetPose ( const [ERetargetSourceOrTarget](API\Plugins\IKRig\Retargeter\ERetargetSourceOrTarget) & SourceOrTarget ) const


description: Get name of the current retarget pose.

code: [FName](API\Runtime\Core\UObject\FName) GetCurrentRetargetPoseName ( const [ERetargetSourceOrTarget](API\Plugins\IKRig\Retargeter\ERetargetSourceOrTarget) & SourceOrTarget ) const


description: Get name of default pose.

code: static const [FName](API\Runtime\Core\UObject\FName) GetDefaultPoseName()


description: Get access to the global settings itself.

code: const [FRetargetGlobalSettings](API\Plugins\IKRig\Retargeter\FRetargetGlobalSettings) & GetGlobalSettings() const


description: Returns the global settings in an IK Retargeter Asset using the given profile name (optional)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetAsset) static void GetGlobalSettingsFromRetargetAsset ( const [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) * RetargetAsset, const [FName](API\Runtime\Core\UObject\FName) OptionalProfileName, [FRetargetGlobalSettings](API\Plugins\IKRig\Retargeter\FRetargetGlobalSettings) & OutSettings )


description: Returns the global settings in the supplied Retarget Profile.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetProfile) static [FRetargetGlobalSettings](API\Plugins\IKRig\Retargeter\FRetargetGlobalSettings) GetGlobalSettingsFromRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile )


description: Get access to the global settings uobject.

code: [UIKRetargetGlobalSettings](API\Plugins\IKRig\Retargeter\UIKRetargetGlobalSettings) * GetGlobalSettingsUObject() const


description: Get the retarget profile by name (may be null)

code: const [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) * GetProfileByName ( const [FName](API\Runtime\Core\UObject\FName) & ProfileName ) const


code: const [FIKRetargetPose](API\Plugins\IKRig\Retargeter\FIKRetargetPose) * GetRetargetPoseByName ( const [ERetargetSourceOrTarget](API\Plugins\IKRig\Retargeter\ERetargetSourceOrTarget) & SourceOrTarget, const [FName](API\Runtime\Core\UObject\FName) PoseName ) const


description: Returns the root settings in an IK Retargeter Asset using the given profile name (optional)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetAsset) static void GetRootSettingsFromRetargetAsset ( const [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) * RetargetAsset, const [FName](API\Runtime\Core\UObject\FName) OptionalProfileName, [FTargetRootSettings](API\Plugins\IKRig\Retargeter\FTargetRootSettings) & OutSettings )


description: Returns the root settings in the supplied Retarget Profile.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure, Category=RetargetProfile) static [FTargetRootSettings](API\Plugins\IKRig\Retargeter\FTargetRootSettings) GetRootSettingsFromRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile )


description: Get access to the root settings.

code: [URetargetRootSettings](API\Plugins\IKRig\Retargeter\URetargetRootSettings) * GetRootSettingsUObject() const


description: Get read-only access to the source IK Rig asset.

code: const [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * GetSourceIKRig() const


description: Get read-write access to the source IK Rig asset. WARNING: do not use for editing the data model. Use Controller class instead.

code: [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * GetSourceIKRigWriteable() const


description: Get name of Source IK Rig property.

code: static const [FName](API\Runtime\Core\UObject\FName) GetSourceIKRigPropertyName()


description: Get name of Source Preview Mesh property.

code: static const [FName](API\Runtime\Core\UObject\FName) GetSourcePreviewMeshPropertyName()


description: Get the names of the all the speed curves the retargeter will be looking for.

code: void GetSpeedCurveNames ( [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & OutSpeedCurveNames ) const


description: Get name of Target IK Rig property.

code: static const [FName](API\Runtime\Core\UObject\FName) GetTargetIKRigPropertyName()


description: Get read-only access to the target IK Rig asset.

code: const [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * GetTargetIKRig() const


description: Get read-write access to the target IK Rig asset. WARNING: do not use for editing the data model. Use Controller class instead.

code: [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * GetTargetIKRigWriteable() const


description: Get name of Target Preview Mesh property.

code: static const [FName](API\Runtime\Core\UObject\FName) GetTargetPreviewMeshPropertyName()


description: UObject.

code: virtual void PostDuplicate ( bool bDuplicateForPIE )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Set the chain FK settings in a retarget profile (will set bApplyChainSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetChainFKSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FTargetChainFKSettings](API\Plugins\IKRig\Retargeter\FTargetChainFKSettings) & FKSettings, const [FName](API\Runtime\Core\UObject\FName) TargetChainName )


description: Set the chain IK settings in a retarget profile (will set bApplyChainSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetChainIKSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FTargetChainIKSettings](API\Plugins\IKRig\Retargeter\FTargetChainIKSettings) & IKSettings, const [FName](API\Runtime\Core\UObject\FName) TargetChainName )


description: Set the chain Speed Plant settings in a retarget profile (will set bApplyChainSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetChainSpeedPlantSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FTargetChainSpeedPlantSettings](API\Plugins\IKRig\Retargeter\FTargetChainSpeedPlantSettings) & SpeedPlantSettings, const [FName](API\Runtime\Core\UObject\FName) TargetChainName )


description: Set the chain settings in a retarget profile (will set bApplyChainSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetChainSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FTargetChainSettings](API\Plugins\IKRig\Retargeter\FTargetChainSettings) & ChainSettings, const [FName](API\Runtime\Core\UObject\FName) TargetChainName )


description: Set the global settings in a retarget profile (will set bApplyGlobalSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetGlobalSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FRetargetGlobalSettings](API\Plugins\IKRig\Retargeter\FRetargetGlobalSettings) & GlobalSettings )


description: Set the root settings in a retarget profile (will set bApplyRootSettings to true).

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=RetargetProfile) static void SetRootSettingsInRetargetProfile ( [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & RetargetProfile, const [FTargetRootSettings](API\Plugins\IKRig\Retargeter\FTargetRootSettings) & RootSettings )


code: UIKRetargeter ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UIKRetargeter

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRetargeter : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bDebugDraw

description: Toggle debug drawing for retargeting in the viewport.

bDrawFinalGoals

description: Draw final IK goal locations.

bDrawSourceLocations

description: Draw goal locations from source skeleton.

ChainDrawSize

description: The visual size of the IK goals in the viewport.

ChainDrawThickness

description: The thickness of lines on the IK goals in the viewport.

Controller

type: TObjectPtr<UOb...

description: The controller responsible for managing this asset's data (all editor mutation goes through this)

SourceMeshOffset

description: The offset applied to the source mesh in the editor viewport.

TargetMeshOffset

description: The offset applied to the target mesh in the editor viewport.

TargetMeshScale

description: Scale the target mesh in the viewport for easier visualization next to the source.


className: UIKRetargetGlobalSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRetargetGlobalSettings : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

EditorController

type: TSharedPtr<FIK...

description: Pointer to editor for details customization

Settings

type: FRetargetGlobal...

description: Global retargeter settings.


description: Apply the settings stored in the retargeter asset.

code: void ApplySettingsFromAsset()


description: Apply the settings stored in a retarget profile. Call this beforeRunRetargeter()to use the settings stored in a profile.

code: void ApplySettingsFromProfile ( const [FRetargetProfile](API\Plugins\IKRig\Retargeter\FRetargetProfile) & Profile )


description: Returns name of the chain associated with this bone. Returns NAME_None if bone is not in a chain.

code: [FName](API\Runtime\Core\UObject\FName) GetChainNameForBone ( const int32 & BoneIndex, const int8 & SkeletonToCheck ) const


description: Get read only access to the core FK retarget chains for debug purposes

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FRetargetChainPairFK](API\Plugins\IKRig\Retargeter\FRetargetChainPairFK) > & GetFKChainPairs() const


description: Get read only access to the core IK retarget chains for debug purposes

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FRetargetChainPairIK](API\Plugins\IKRig\Retargeter\FRetargetChainPairIK) > & GetIKChainPairs() const


description: Get read only access to the core root retargeter for debug purposes

code: const [FRootRetargeter](API\Plugins\IKRig\Retargeter\FRootRetargeter) & GetRootRetargeter() const


description: Get index of the root bone of the source skeleton.

code: const int32 GetSourceRetargetRoot() const


description: Get read-only access to the source skeleton.

code: const [FRetargetSkeleton](API\Plugins\IKRig\Retargeter\FRetargetSkeleton) & GetSourceSkeleton() const


description: Get the currently running IK Rig processor for the target

code: [UIKRigProcessor](API\Plugins\IKRig\Rig\UIKRigProcessor) * GetTargetIKRigProcessor() const


description: Get index of the root bone of the target skeleton.

code: const int32 GetTargetRetargetRoot() const


description: Get read-only access to the target skeleton.

code: const [FTargetSkeleton](API\Plugins\IKRig\Retargeter\FTargetSkeleton) & GetTargetSkeleton() const


description: Initialize the retargeter to enable running it.

code: void Initialize ( [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * SourceSkeleton, [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * TargetSkeleton, [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) * InRetargeterAsset, const bool bSuppressWarnings )


description: Returns true if the bone is part of a retarget chain or root bone, false otherwise.

code: bool IsBoneRetargeted ( const int32 & BoneIndex, const int8 & SkeletonToCheck ) const


description: Get whether this processor is ready to callRunRetargeter()and generate new poses.

code: bool IsInitialized() const


description: Reset the IK planting state.

code: void ResetPlanting()


description:
Run the retarget to generate a new pose.
The retargeted Component/Global space pose for the target skeleton

code: [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & RunRetargeter ( const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InSourceGlobalPose, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), float > & SpeedValuesFromCurves, const float DeltaTime )


description: Set that this processor needs to be reinitialized.

code: void SetNeedsInitialized()


description: Get whether this processor was initialized with these skeletal meshes and retarget asset

code: bool WasInitializedWithTheseAssets ( const [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) > InSourceMesh, const [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) > InTargetMesh, const [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UIKRetargeter](API\Plugins\IKRig\Retargeter\UIKRetargeter) > InRetargetAsset )


className: UIKRetargetProcessor

description: RunRetargeter returns an array of global space transforms for the target skeleton.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UIKRetargetProcessor : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

DebugData

type: FRetargetDebugD...

description: Store data for debug drawing

Log

type: FIKRigLogger

description: Logging system


description: UObject.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: URetargetChainSettings ( const [FName](API\Runtime\Core\UObject\FName) & TargetChain )


className: URetargetChainSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class URetargetChainSettings : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

EditorController

description: END deprecated properties.

Settings

type: FTargetChainSet...

description: The settings used to control the motion on this target chain.

SourceChain

type: FName

description: The chain on the Source IK Rig asset to copy animation FROM.

TargetChain

description: The chain on the Target IK Rig asset to copy animation TO.


className: URetargetRootSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class URetargetRootSettings : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

EditorController

description: Pointer to editor for details customization

Settings

type: FTargetRootSett...

description: The settings used to control the motion of the target root bone.


className: EIKRigGoalPreviewMode

code: enum EIKRigGoalPreviewMode { Additive, Absolute, }


className: EIKRigGoalSpace

code: enum EIKRigGoalSpace { Component, Additive, World, }


className: EIKRigGoalTransformSource

code: enum EIKRigGoalTransformSource { Manual, Bone, ActorComponent, }


code: namespace EIKRigTransformType { enum Type { Current, Reference, } }


code: FBoneChain ( [FName](API\Runtime\Core\UObject\FName) InName, const [FName](API\Runtime\Core\UObject\FName) InStartBone, const [FName](API\Runtime\Core\UObject\FName) InEndBone, const [FName](API\Runtime\Core\UObject\FName) InGoalName )


className: FBoneChain

EndBone

type: FBoneReference


code: FIKRigGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


code: FIKRigGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) * InGoal )


code: FIKRigGoal ( const [FName](API\Runtime\Core\UObject\FName) & InName, const FVector & InPosition, const FQuat & InRotation, const float InPositionAlpha, const float InRotationAlpha, [EIKRigGoalSpace](API\Plugins\IKRig\Rig\EIKRigGoalSpace) InPositionSpace, [EIKRigGoalSpace](API\Plugins\IKRig\Rig\EIKRigGoalSpace) InRotationSpace )


className: FIKRigGoal

FinalBlendedPosition

type: FVector

FinalBlendedRotation

type: FQuat

Name

description: Name of the IK Goal. Must correspond to the name of a Goal in the target IKRig asset.

Position

description: Position of the IK goal in Component Space of target actor component.

PositionAlpha

type: float

description: Range 0-1, default is 1.0.

PositionSpace

type: EIKRigGoalSpace

description: The space that the goal position is in.

Rotation

description: Rotation of the IK goal in Component Space of target actor component.

RotationAlpha

description: Range 0-1, default is 1.0.

RotationSpace

description: The space that the goal rotation is in.

SourceBone

description: When TransformSource is set to "Bone" mode, the Position and Rotation will be driven by this Bone's input transform.

TransformSource

type: EIKRigGoalTrans...

description: Set the source of the transform data for the Goal.


description: Clear out all Goals in container.

code: void Empty()


description: Get an IK goal with the given name. Returns nullptr if no Goal is found in the container with the name.

code: const [FIKRigGoal](API\Plugins\IKRig\Rig\FIKRigGoal) * FindGoalByName ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Get read-only access to array of Goals.

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FIKRigGoal](API\Plugins\IKRig\Rig\FIKRigGoal) > & GetGoalArray() const


description: Set an IK goal to go to a specific location and rotation (in the specified space) blended by alpha. Will ADD the goal if none exist with the input name.

code: void SetIKGoal ( const [FIKRigGoal](API\Plugins\IKRig\Rig\FIKRigGoal) & InGoal )


code: void SetIKGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) * InEffectorGoal )


code: void Initialize ( const [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * SkeletalMesh )


code: FIKRigInputSkeleton ( const [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * SkeletalMesh )


className: FIKRigInputSkeleton

description: To validate compatibility use UIKRigProcess::IsIKRigCompatibleWithSkeleton()

BoneNames

type: TArray<FName>

LocalRefPose

type: TArray< FTransf...

ParentIndices

type: TArray< int32 >


code: static void ConvertLocalPoseToGlobal ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & InParentIndices, const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InLocalPose, [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutGlobalPose )


code: int32 GetBoneIndexFromName ( const [FName](API\Runtime\Core\UObject\FName) InName ) const


code: const [FName](API\Runtime\Core\UObject\FName) & GetBoneNameFromIndex ( const int32 BoneIndex ) const


code: void GetChainsInList ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & SelectedBones, [TArray](API\Runtime\Core\Containers\TArray)< [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) > & OutChains ) const


code: int32 GetCachedEndOfBranchIndex ( const int32 InBoneIndex ) const


code: int32 GetChildIndices ( const int32 ParentBoneIndex, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & Children ) const


description: Given a set of bones, returns a set of indices of bones that are mirrored across X axis (YZ plane) return false if any of the bones do not have a mirrored pair within the MaxDistanceThreshold

code: bool GetMirroredBoneIndices ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & BoneIndices, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutMirroredIndices ) const


code: int32 GetParentIndex ( const int32 BoneIndex ) const


code: int32 GetParentIndexThatIsNotExcluded ( const int32 BoneIndex ) const


code: bool IsBoneExcluded ( const int32 BoneIndex ) const


code: bool IsBoneInDirectLineage ( const [FName](API\Runtime\Core\UObject\FName) & Child, const [FName](API\Runtime\Core\UObject\FName) & PotentialParent ) const


code: static void NormalizeRotations ( [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & Transforms )


code: void PropagateGlobalPoseBelowBone ( const int32 BoneIndex )


code: void SetInputSkeleton ( const [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * SkeletalMesh, const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & InExcludedBones )


code: void SetInputSkeleton ( const [FIKRigInputSkeleton](API\Plugins\IKRig\Rig\FIKRigInputSkeleton) & InputSkeleton, const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & InExcludedBones )


code: void UpdateGlobalTransformFromLocal ( const int32 BoneIndex )


code: void UpdateLocalTransformFromGlobal ( const int32 BoneIndex )


description: Get indices of bones in this chain, ordered from tip to root. returns false if chain is invalid.

code: bool ValidateChainAndGetBones ( const [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) & Chain, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutBoneIndices ) const


className: FIKRigSkeleton

BoneNames

description: Names of bones. Used to match hierarchy with runtime skeleton.

CurrentPoseGlobal

description: The current GLOBAL space pose of each bone.

CurrentPoseLocal

description: The current LOCAL space pose of each bone.

ExcludedBones

description: Sparse array of bones that are to be excluded from any solvers (parented around, treated as FK children).

description: Same length as BoneNames, stores index of parent for each bone.

RefPoseGlobal

description: The initial/reference GLOBAL space pose of each bone.


className: GetTypeHash

code: uint32 GetTypeHash ( [FIKRigGoal](API\Plugins\IKRig\Rig\FIKRigGoal) ObjectRef )


code: FLimbLink ( const FVector & InLocation, int32 InBoneIndex )


className: FLimbLink

BoneIndex

description: BoneIndexin SkeletalMesh.

Length

description: Distance to its parent.

LinkAxisZ

description: Axis utilites.

Location

description: Location of bone in component space.


code: int32 AddLink ( const FVector & InLocation, int32 InBoneIndex )


code: int32 GetBoneIndex ( const int32 Index ) const


className: FLimbSolverSettings

bAveragePull

type: bool

description: Pull averaging only has a visual impact when we have more than 2 bones (3 links).

bEnableLimit

description: Enable/Disable rotational limits

bEnableTwistCorrection

description: Enable Knee Twist correction, by comparing Foot FK with Foot IK orientation.

EndBoneForwardAxis

type: TEnumAsByte<EA...

description: Forward Axis for Foot bone.

HingeRotationAxis

description: Hinge Bones Rotation Axis. This is essentially the plane normal for (hip - knee - foot).

MaxIterations

description: Number of Max Iterations to reach the target

MinRotationAngle

description: Only used if bEnableRotationLimit is enabled.

PullDistribution

description: Re-position limb to distribute pull: 0 = foot, 0.5 = balanced, 1.f = hip

ReachPrecision

description: Precision (distance to the target)

ReachStepAlpha

description: Move end effector towards target. If we are compressing the chain, limit displacement.


description: Bone settings

code: virtual void AddBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName )


code: bool Solve ( [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InOutTransforms, const FVector & InGoalLocation, const FQuat & InGoalRotation, const [FLimbSolverSettings](API\Plugins\IKRig\Rig\Solvers\FLimbSolverSettings) & InSettings )


className: GetRotationFromDeformedPoints

description: Given a set of points in an initial configuration and the same set of points in a deformed configuration, this function outputs a quaternion that represents the "best fit" rotation that rotates the initial points to the current points.

code: static FQuat GetRotationFromDeformedPoints ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector > & InInitialPoints, const [TArray](API\Runtime\Core\Containers\TArray)< FVector > & InCurrentPoints, FVector & OutInitialCentroid, FVector & OutCurrentCentroid )


description: Goals

code: virtual void AddGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & NewGoal )


description: Override to support supplying per-bone settings to outside systems for editing/UI NOTE: This must be overriden on solvers that use bone settings.

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName ) const


description: Override to support telling outside systems which bones this solver has setting for. NOTE: This must be overriden on solvers that use bone settings. NOTE: Only ADD to the incoming set, do not remove from it.

code: virtual void GetBonesWithSettings ( [TSet](API\Runtime\Core\Containers\TSet)< [FName](API\Runtime\Core\UObject\FName) > & OutBonesWithSettings ) const


description: Override to support supplying goals settings specific to this solver to outside systems for editing/UI

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetGoalSettings ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to give your solver a nice name to display in the UI

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNiceName() const


description: If solver requires a root bone, then override this to return it.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetRootBone() const


description: Todo override to draw custom per-bone settings in the editor viewport

code: virtual void DrawBoneSettings ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI ) const


description: Override to provide warning to user during setup of any missing components. return false if no warnings.

code: virtual bool GetWarningMessage ( [FText](API\Runtime\Core\Internationalization\FText) & OutWarningMessage ) const


description: UIKRigSolverinterface

code: virtual void Initialize ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton )


description: Return true if the supplied Bone is affected by this solver - this provides UI feedback for user

code: virtual bool IsBoneAffectedBySolver ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton ) const


description: ENDUIKRigSolverinterface

code: virtual void PostLoad()


description: Override to support QUERY for a connected goal

code: virtual bool IsGoalConnected ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to support ADDING PER-BONE settings for this solver

code: virtual void RemoveBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName )


description: Override to support RENAMING an existing goal

code: virtual void RenameGoal ( const [FName](API\Runtime\Core\UObject\FName) & OldName, const [FName](API\Runtime\Core\UObject\FName) & NewName )


description: Override to support REMOVING a goal from custom solver

code: virtual void RemoveGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


description: Root bone can be set on this solver

code: virtual bool RequiresRootBone() const


description: Override to support CHANGING BONE for an existing goal

code: virtual void SetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName, const [FName](API\Runtime\Core\UObject\FName) & NewBoneName )


description: Override to support SETTING ROOT BONE for the solver

code: virtual void SetRootBone ( const [FName](API\Runtime\Core\UObject\FName) & RootBoneName )


description: OverrideSolve()to evaluate new output pose (InOutGlobalTransform)

code: virtual void Solve ( [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & Goals )


description: Override to support RECEIVING modified solver settings from outside systems for editing/UI. Note: you can safely cast this to your own solver type and copy any relevant settings at runtime This is necessary because at runtime, the IKRigProcessor creates a copy of your solver class and the copy must be notified of changes made to the class settings in the source asset.

code: virtual void UpdateSolverSettings ( [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * InSettings )


className: UIKRigFBIKSolver

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, EditInlineNew, Config=Engine, HideCategories=UObject) class UIKRigFBIKSolver : public [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver)

bAllowStretch

description: If true, joints will translate to reach the effectors; causing bones to lengthen if necessary.

BoneSettings

type: TArray<TObject...

Iterations

description: High iteration counts can help solve complex joint configurations with competing constraints, but will increase runtime cost.

MassMultiplier

description: A global mass multiplier; higher values will make the joints more stiff, but require more iterations.

MaxAngle

description: Maximum angle that a joint can be rotated per constraint iteration.

OverRelaxation

description: Pushes constraints beyond their normal amount to speed up convergence.

PrePullRootSettings

type: FRootPrePullSet...

description: Settings only applicable when Root Behavior is set to "PrePull".

PullChainAlpha

description: A global multiplier for all Pull Chain Alpha values on all effectors.

RootBehavior

type: EPBIKRootBehavi...

description: (Default is PrePull) Set the behavior of the solver root.

RootBone

description: All bones above this bone in the hierarchy will be completely ignored by the solver.


description: Override to tell systems if this solver supports per-bone settings

code: virtual bool UsesBoneSettings() const


description: Override to support ADDING PER-BONE settings for this solver

code: virtual void AddBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName )


description: Override to support ADDING a new goal to custom solver

code: virtual void AddGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & NewGoal )


description: Todo override to draw custom per-bone settings in the editor viewport

code: virtual void DrawBoneSettings ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI ) const


className: FIKRigSolverModified

description: Callback whenever this solver is edited

code: class FIKRigSolverModified : public TBaseMulticastDelegate_OneParam< void, UIKRigSolver * >


description: Override to support supplying per-bone settings to outside systems for editing/UI NOTE: This must be overriden on solvers that use bone settings.

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName ) const


description: Override to support telling outside systems which bones this solver has setting for. NOTE: This must be overriden on solvers that use bone settings. NOTE: Only ADD to the incoming set, do not remove from it.

code: virtual void GetBonesWithSettings ( [TSet](API\Runtime\Core\Containers\TSet)< [FName](API\Runtime\Core\UObject\FName) > & OutBonesWithSettings ) const


description: Override to support GETTING END BONE of the solver

code: virtual [FName](API\Runtime\Core\UObject\FName) GetEndBone() const


description: Override to support supplying goals settings specific to this solver to outside systems for editing/UI

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetGoalSettings ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to give your solver a nice name to display in the UI

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNiceName() const


description: If solver requires a root bone, then override this to return it.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetRootBone() const


description: Override to provide warning to user during setup of any missing components. return false if no warnings.

code: virtual bool GetWarningMessage ( [FText](API\Runtime\Core\Internationalization\FText) & OutWarningMessage ) const


description: Override to setup internal data based on ref pose

code: virtual void Initialize ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton )


description: Return true if the supplied Bone is affected by this solver - this provides UI feedback for user

code: virtual bool IsBoneAffectedBySolver ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton ) const


description: Get if this solver is enabled

code: bool IsEnabled() const


description: Override to support QUERY for a connected goal

code: virtual bool IsGoalConnected ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: UObjectinterface

code: virtual void PostLoad()


description: Unlike PostEditUndo (which is called for any object in the transaction), this is only called on objects that are actually changed by the transaction.

code: virtual void PostTransacted ( const [FTransactionObjectEvent](API\Runtime\CoreUObject\Misc\FTransactionObjectEvent) & TransactionEvent )


description: Override to support REMOVING a goal from custom solver

code: virtual void RemoveGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


code: virtual void RemoveBoneSetting ( const [FName](API\Runtime\Core\UObject\FName) & BoneName )


description: Override to support RENAMING an existing goal

code: virtual void RenameGoal ( const [FName](API\Runtime\Core\UObject\FName) & OldName, const [FName](API\Runtime\Core\UObject\FName) & NewName )


description: Override and return true if this solver requires an end bone to be specified

code: virtual bool RequiresEndBone() const


code: virtual bool RequiresRootBone() const


description: Turn solver on/off (will be skipped during execution if disabled)

code: void SetEnabled ( const bool bEnabled )


description: Override to support SETTING END BONE for the solver

code: virtual void SetEndBone ( const [FName](API\Runtime\Core\UObject\FName) & EndBoneName )


description: Override to support CHANGING BONE for an existing goal

code: virtual void SetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName, const [FName](API\Runtime\Core\UObject\FName) & NewBoneName )


description: Override to support SETTING ROOT BONE for the solver

code: virtual void SetRootBone ( const [FName](API\Runtime\Core\UObject\FName) & RootBoneName )


description: OverrideSolve()to evaluate new output pose (InOutGlobalTransform)

code: virtual void Solve ( [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & Goals )


description: Override to support RECEIVING modified solver settings from outside systems for editing/UI. Note: you can safely cast this to your own solver type and copy any relevant settings at runtime This is necessary because at runtime, the IKRigProcessor creates a copy of your solver class and the copy must be notified of changes made to the class settings in the source asset.

code: virtual void UpdateSolverSettings ( [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * InSettings )


description: Override to tell systems if this solver supports per-bone settings

code: virtual bool UsesBoneSettings() const


className: UIKRigSolver

description: This is the base class for creating your own solver type that integrates into the IK Rig framework/editor.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, HideCategories=UObject) class UIKRigSolver : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Goals

code: virtual void AddGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & NewGoal )


description: Override to support supplying goals settings specific to this solver to outside systems for editing/UI

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetGoalSettings ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to give your solver a nice name to display in the UI

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNiceName() const


description: If solver requires a root bone, then override this to return it.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetRootBone() const


description: Override to provide warning to user during setup of any missing components. return false if no warnings.

code: virtual bool GetWarningMessage ( [FText](API\Runtime\Core\Internationalization\FText) & OutWarningMessage ) const


description: UIKRigSolverinterface

code: virtual void Initialize ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton )


description: Override to support QUERY for a connected goal

code: virtual bool IsGoalConnected ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Return true if the supplied Bone is affected by this solver - this provides UI feedback for user

code: virtual bool IsBoneAffectedBySolver ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton ) const


description: Override to support REMOVING a goal from custom solver

code: virtual void RemoveGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


description: Override to support RENAMING an existing goal

code: virtual void RenameGoal ( const [FName](API\Runtime\Core\UObject\FName) & OldName, const [FName](API\Runtime\Core\UObject\FName) & NewName )


description: Root bone can be set on this solver

code: virtual bool RequiresRootBone() const


code: virtual void SetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName, const [FName](API\Runtime\Core\UObject\FName) & NewBoneName )


code: virtual void SetRootBone ( const [FName](API\Runtime\Core\UObject\FName) & RootBoneName )


code: virtual void Solve ( [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & Goals )


code: virtual void UpdateSolverSettings ( [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * InSettings )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, EditInlineNew) class UIKRig_BodyMover : public [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver)

PositionAlpha

description: Blend the translational effect of this solver on/off. Range is 0-1. Default is 1.0.

PositionNegativeX

description: Multiply the NEGATIVE X translation. Range is 0-1. Default is 1.0.

PositionNegativeY

description: Multiply the NEGATIVE Y translation. Range is 0-1. Default is 1.0.

PositionNegativeZ

description: Multiply the NEGATIVE Z translation. Range is 0-1. Default is 1.0.

PositionPositiveX

description: Multiply the POSITIVE X translation. Range is 0-1. Default is 1.0.

PositionPositiveY

description: Multiply the POSITIVE Y translation. Range is 0-1. Default is 1.0.

PositionPositiveZ

description: Multiply the POSITIVE Z translation. Range is 0-1. Default is 1.0.

description: The target bone to move with the effectors.

RotateXAlpha

description: Blend the X-axis rotational effect on/off. Range is 0-1. Default is 1.0.

RotateYAlpha

description: Blend the Y-axis rotational effect on/off. Range is 0-1. Default is 1.0.

RotateZAlpha

description: Blend the Z-axis rotational effect on/off. Range is 0-1. Default is 1.0.

RotationAlpha

description: Blend the total rotational effect on/off. Range is 0-1. Default is 1.0.


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_BodyMoverEffector : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

InfluenceMultiplier

description: Scale the influence this effector has on the body. Range is 0-10. Default is 1.0.


code: void CopySettings ( const [UIKRig_FBIKBoneSettings](API\Plugins\IKRig\Rig\Solvers\UIKRig_FBIKBoneSettings) * Other )


code: void CopyToCoreStruct ( [PBIK::FBoneSettings](API\Plugins\PBIK\Core\FBoneSettings) & Settings ) const


code: void CopySettings ( const [UIKRig_FBIKEffector](API\Plugins\IKRig\Rig\Solvers\UIKRig_FBIKEffector) * Other )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_FBIKEffector : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

BoneName

description: The bone that this effector will pull on.

GoalName

description: The Goal that is driving this effector's transform.

PinRotation

description: Range 0-1 (default is 1.0).

PullChainAlpha

description: Range 0-1 (default is 1.0).

StrengthAlpha

description: Range 0-1 (default is 1.0).


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_FBIKBoneSettings : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Bone

description: The bone these settings are applied to.

bUsePreferredAngles

description: When true, this bone will "prefer" to rotate in the direction specified by the Preferred Angles when the chain it belongs to is compressed.

MaxX

description: Range is 0 to 180 (Default is 0).

MaxY

description: Range is 0 to 180 (Default is 0).

MaxZ

description: Range is 0 to 180 (Default is 0).

MinX

description: Range is -180 to 0 (Default is 0).

MinY

description: Range is -180 to 0 (Default is 0).

MinZ

description: Range is -180 to 0 (Default is 0).

PositionStiffness

description: Range is 0 to 1 (Default is 0).

PreferredAngles

description: The local Euler angles (in degrees) used to rotate this bone when the chain it belongs to is squashed.

RotationStiffness

description: Range is 0 to 1 (Default is 0).

X

type: EPBIKLimitType

description: Limit the rotation angle of the bone on the X axis.

Y

description: Limit the rotation angle of the bone on the Y axis.

Z

description: Limit the rotation angle of the bone on the Z axis.


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_LimbEffector : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

BoneName

type: FName


description: Goals

code: virtual void AddGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & NewGoal )


description: Override to support supplying goals settings specific to this solver to outside systems for editing/UI

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetGoalSettings ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to give your solver a nice name to display in the UI

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNiceName() const


description: If solver requires a root bone, then override this to return it.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetRootBone() const


description: Override to provide warning to user during setup of any missing components. return false if no warnings.

code: virtual bool GetWarningMessage ( [FText](API\Runtime\Core\Internationalization\FText) & OutWarningMessage ) const


description: Return true if the supplied Bone is affected by this solver - this provides UI feedback for user

code: virtual bool IsBoneAffectedBySolver ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton ) const


description: UIKRigSolverinterface

code: virtual void Initialize ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton )


description: Override to support QUERY for a connected goal

code: virtual bool IsGoalConnected ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to support REMOVING a goal from custom solver

code: virtual void RemoveGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


description: Override to support RENAMING an existing goal

code: virtual void RenameGoal ( const [FName](API\Runtime\Core\UObject\FName) & OldName, const [FName](API\Runtime\Core\UObject\FName) & NewName )


description: Root bone can be set on this solver

code: virtual bool RequiresRootBone() const


description: Override to support CHANGING BONE for an existing goal

code: virtual void SetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName, const [FName](API\Runtime\Core\UObject\FName) & NewBoneName )


description: Override to support SETTING ROOT BONE for the solver

code: virtual void SetRootBone ( const [FName](API\Runtime\Core\UObject\FName) & RootBoneName )


description: OverrideSolve()to evaluate new output pose (InOutGlobalTransform)

code: virtual void Solve ( [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & Goals )


description: Override to support RECEIVING modified solver settings from outside systems for editing/UI. Note: you can safely cast this to your own solver type and copy any relevant settings at runtime This is necessary because at runtime, the IKRigProcessor creates a copy of your solver class and the copy must be notified of changes made to the class settings in the source asset.

code: virtual void UpdateSolverSettings ( [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * InSettings )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, EditInlineNew) class UIKRig_LimbSolver : public [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver)

bAveragePull

description: Pull averaging only has a visual impact when we have more than 2 bones (3 links).

bEnableLimit

description: Enable/Disable rotational limits

bEnableTwistCorrection

description: Enable Knee Twist correction, by comparing Foot FK with Foot IK orientation.

EndBoneForwardAxis

description: Forward Axis for Foot bone.

HingeRotationAxis

description: Hinge Bones Rotation Axis. This is essentially the plane normal for (hip - knee - foot).

MaxIterations

description: Number of Max Iterations to reach the target

MinRotationAngle

description: Only used if bEnableRotationLimit is enabled.

PullDistribution

description: Re-position limb to distribute pull: 0 = foot, 0.5 = balanced, 1.f = hip

ReachPrecision

description: Precision (distance to the target)

ReachStepAlpha

description: Move end effector towards target. If we are compressing the chain, limit displacement.


description: Override to support GETTING END BONE of the solver

code: virtual [FName](API\Runtime\Core\UObject\FName) GetEndBone() const


description: Override and return true if this solver requires an end bone to be specified

code: virtual bool RequiresEndBone() const


description: End bone can be set on this solver

code: virtual void SetEndBone ( const [FName](API\Runtime\Core\UObject\FName) & EndBoneName )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, EditInlineNew) class UIKRig_PoleSolver : public [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver)


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_PoleSolverEffector : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Alpha

description: Blend the effector on/off. Range is 0-1. Default is 1.0.


description: Override to support ADDING a new goal to custom solver

code: virtual void AddGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & NewGoal )


description: Override to give your solver a nice name to display in the UI

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNiceName() const


description: Override to support supplying goals settings specific to this solver to outside systems for editing/UI

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetGoalSettings ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: If solver requires a root bone, then override this to return it.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetRootBone() const


description: Override to provide warning to user during setup of any missing components. return false if no warnings.

code: virtual bool GetWarningMessage ( [FText](API\Runtime\Core\Internationalization\FText) & OutWarningMessage ) const


description: UIKRigSolverinterface

code: virtual void Initialize ( const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton )


description: Return true if the supplied Bone is affected by this solver - this provides UI feedback for user

code: virtual bool IsBoneAffectedBySolver ( const [FName](API\Runtime\Core\UObject\FName) & BoneName, const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton ) const


description: Override to support QUERY for a connected goal

code: virtual bool IsGoalConnected ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: Override to support RENAMING an existing goal

code: virtual void RenameGoal ( const [FName](API\Runtime\Core\UObject\FName) & OldName, const [FName](API\Runtime\Core\UObject\FName) & NewName )


description: Override to support REMOVING a goal from custom solver

code: virtual void RemoveGoal ( const [FName](API\Runtime\Core\UObject\FName) & GoalName )


description: OverrideSolve()to evaluate new output pose (InOutGlobalTransform)

code: virtual void Solve ( [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & IKRigSkeleton, const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & Goals )


description: Override to support CHANGING BONE for an existing goal

code: virtual void SetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName, const [FName](API\Runtime\Core\UObject\FName) & NewBoneName )


description: Override to support RECEIVING modified solver settings from outside systems for editing/UI. Note: you can safely cast this to your own solver type and copy any relevant settings at runtime This is necessary because at runtime, the IKRigProcessor creates a copy of your solver class and the copy must be notified of changes made to the class settings in the source asset.

code: virtual void UpdateSolverSettings ( [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * InSettings )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, EditInlineNew) class UIKRig_SetTransform : public [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver)

Effector

type: TObjectPtr<UIK...


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRig_SetTransformEffector : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bEnablePosition

description: If true, Goal will drive the translation of the target bone. Default is true.

bEnableRotation

description: If true, Goal will drive the rotation of the target bone. Default is true.


description: Runtime, read-only access to array of Goals, all modifications must go throughUIKRigController

code: const [TArray](API\Runtime\Core\Containers\TArray)< [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) * > & GetGoalArray() const


description: Get the preview mesh for this asset

code: virtual [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * GetPreviewMesh() const


description: ENDIInterface_PreviewMeshProviderinterface Get name of Preview Mesh property

code: static const [FName](API\Runtime\Core\UObject\FName) GetPreviewMeshPropertyName()


description: Runtime, read-only access to Retarget Definition, all modifications must go throughUIKRigController

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) > & GetRetargetChains() const


description: Runtime, read-only access to read a bone chain, all modifications must go throughUIKRigController

code: const [FBoneChain](API\Plugins\IKRig\Rig\FBoneChain) * GetRetargetChainByName ( [FName](API\Runtime\Core\UObject\FName) ChainName ) const


description: Runtime, read-only access to Retarget Root, all modifications must go throughUIKRigController

code: const [FName](API\Runtime\Core\UObject\FName) & GetRetargetRoot() const


description: Runtime, read-only access to skeleton data

code: const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & GetSkeleton() const


description: UObject

code: virtual void PostDuplicate ( bool bDuplicateForPIE )


description: Runtime, read-only access to array of Solvers, all modifications must go throughUIKRigController

code: const [TArray](API\Runtime\Core\Containers\TArray)< [UIKRigSolver](API\Plugins\IKRig\Rig\Solvers\UIKRigSolver) * > & GetSolverArray() const


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: virtual void SetPreviewMesh ( [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * PreviewMesh, bool bMarkAsDirty )


className: UIKRigDefinition

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Blueprintable) class UIKRigDefinition : public [UObject](API\Runtime\CoreUObject\UObject\UObject), public [IInterface_PreviewMeshProvider](API\Runtime\Engine\Interfaces\IInterface_PreviewMeshProvider)

BoneSize

description: The size of the Bones in the editor viewport.

Controller

type: TObjectPtr<UOb...

description: The controller responsible for managing this asset's data (all editor mutation goes through this)

DrawGoals

description: Draw bones in the viewport.

GoalSize

description: The size of the Goals in the editor viewport.

GoalThickness

description: The thickness of the Goals in the editor viewport.

PreviewSkeletalMesh

type: TSoftObjectPtr<...

description: The skeletal mesh to run the IK solve on (loaded into viewport).


code: void OnCopyToClipboard ( [ESlateTransformComponent::Type](API\Developer\AnimationWidgets\ESlateTransformComponent__Type) Component, [EIKRigTransformType::Type](API\Plugins\IKRig\Rig\EIKRigTransformType__Type) TransformType ) const


code: bool operator== ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) & Other ) const


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


code: void ResetTransformToDefault ( [ESlateTransformComponent::Type](API\Developer\AnimationWidgets\ESlateTransformComponent__Type) Component, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > PropertyHandle )


code: void OnPasteFromClipboard ( [ESlateTransformComponent::Type](API\Developer\AnimationWidgets\ESlateTransformComponent__Type) Component, [EIKRigTransformType::Type](API\Plugins\IKRig\Rig\EIKRigTransformType__Type) TransformType )


code: void SetTransform ( const FTransform & InTransform, [EIKRigTransformType::Type](API\Plugins\IKRig\Rig\EIKRigTransformType__Type) InTransformType )


code: bool TransformDiffersFromDefault ( [ESlateTransformComponent::Type](API\Developer\AnimationWidgets\ESlateTransformComponent__Type) Component, [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > PropertyHandle ) const


className: UIKRigEffectorGoal

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType) class UIKRigEffectorGoal : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bExposePosition

description: Should position data be exposed in Blueprint

bExposeRotation

description: Should rotation data be exposed in Blueprint

BoneName

description: The name of the bone that this Goal is located at.

CurrentTransform

type: FTransform

description: The current transform of this Goal, in the Global Space of the character.

GoalName

description: The name used to refer to this goal from outside systems.

InitialTransform

description: The initial transform of this Goal, as defined by the initial transform of the Goal's bone in the retarget pose.

PositionAlpha

description: Range 0-1, default is 1.

PreviewMode

type: EIKRigGoalPrevi...

description: Effects how this Goal transform is previewed in the IK Rig editor.

RotationAlpha

description: Range 0-1, default is 1.

SizeMultiplier

description: The size of the Goal gizmo drawing in the editor viewport.

ThicknessMultiplier

description: The thickness of the Goal gizmo drawing in the editor viewport.


description: Used to propagate setting values from the source asset at runtime (settings that do not require re-initialization)

code: void CopyAllInputsFromSourceAssetAtRuntime ( const [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * SourceAsset )


description: Get the results after callingSolve()

code: void CopyOutputGlobalPoseToArray ( [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & OutputPoseGlobal ) const


code: [TTuple](API\Runtime\Core\Misc\TTuple)< FTransform, FTransform > PrepareNumericValueChanged ( [ESlateTransformComponent::Type](API\Developer\AnimationWidgets\ESlateTransformComponent__Type) Component, [ESlateRotationRepresentation::Type](API\Developer\AnimationWidgets\ESlateRotationRepresentation__Ty-) Representation, [ESlateTransformSubComponent::Type](API\Developer\AnimationWidgets\ESlateTransformSubComponent__Typ-) SubComponent, [FTransform::FReal](API\Runtime\Core\Math\TTransform\FReal) Value, [EIKRigTransformType::Type](API\Plugins\IKRig\Rig\EIKRigTransformType__Type) TransformType ) const


description: Get the bone associated with a goal

code: const [FGoalBone](API\Plugins\IKRig\Rig\FGoalBone) * GetGoalBone ( const [FName](API\Runtime\Core\UObject\FName) & GoalName ) const


description: END UPDATE SEQUENCE FUNCTIONSGet access to the internal goal data (read only)

code: const [FIKRigGoalContainer](API\Plugins\IKRig\Rig\FIKRigGoalContainer) & GetGoalContainer() const


description: Get read-only access to the internal skeleton data

code: const [FIKRigSkeleton](API\Plugins\IKRig\Rig\FIKRigSkeleton) & GetSkeleton() const


description: Used to determine if the IK Rig asset is compatible with a given skeleton.

code: static bool IsIKRigCompatibleWithSkeleton ( const [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * InRigAsset, const [FIKRigInputSkeleton](API\Plugins\IKRig\Rig\FIKRigInputSkeleton) & InputSkeleton, const [FIKRigLogger](API\Plugins\IKRig\FIKRigLogger) * Log )


description: Get read/write access to the internal skeleton data


description: Setup a new processor to run the given IKRig asset NOTE!! this function creates new UObjects and consequently MUST be called from the main thread!!

code: void Initialize ( const [UIKRigDefinition](API\Plugins\IKRig\Rig\UIKRigDefinition) * InRigAsset, const [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * SkeletalMesh, const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & ExcludedGoals )


description: Set a named IK goal to go to a specific location, rotation and space, blended by separate position/rotation alpha (0-1)

code: void SetIKGoal ( const [FIKRigGoal](API\Plugins\IKRig\Rig\FIKRigGoal) & Goal )


description: Reset all internal data structures. Will require re-initialization before solving again.

code: void Reset()


code: void SetIKGoal ( const [UIKRigEffectorGoal](API\Plugins\IKRig\Rig\UIKRigEffectorGoal) * Goal )


description: This is the general sequence of function calls to run a typical IK solve:Set all bone transforms in global space. This is the pose the IK solve will start from

code: void SetInputPoseGlobal ( const [TArray](API\Runtime\Core\Containers\TArray)< FTransform > & InGlobalBoneTransforms )


description: Optionally can be called beforeSolve()to use the reference pose as start pose

code: void SetInputPoseToRefPose()


description: Run entire stack of solvers. If any Goals were supplied in World Space, a valid WorldToComponent transform must be provided.

code: void Solve ( const FTransform & WorldToComponent )


description: Copy output transforms withCopyOutputGlobalPoseToArray()

code: UIKRigProcessor()


className: UIKRigProcessor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UIKRigProcessor : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Log

type: FIKRigLogger

description: Logging system


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

module: IKRigDeveloper

code: virtual void ShutdownModule()


description: FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));

code: virtual void StartupModule()


className: FIKRigDeveloperModule

code: class FIKRigDeveloperModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Called to generate child content of this node

code: virtual void GenerateChildContent ( [IDetailChildrenBuilder](API\Editor\PropertyEditor\IDetailChildrenBuilder) & ChildrenBuilder )


description: Called to generate content in the header of this node ( the actual node content ). Only called if HasHeaderRow is true

code: virtual void GenerateHeaderRowContent ( [FDetailWidgetRow](API\Editor\PropertyEditor\FDetailWidgetRow) & NodeRow )


description: The name of this custom builder. This is used as an identifier to save expansion state if needed

code: virtual [FName](API\Runtime\Core\UObject\FName) GetName() const


description: true if this node should be collapsed in the tree

code: virtual bool InitiallyCollapsed() const


description: true if this node requires tick, false otherwise

code: virtual bool RequiresTick() const


description: IDetailCustomNodeBuilderInterface

code: virtual void SetOnRebuildChildren ( FSimpleDelegate InOnRegenerateChildren )


description: Called each tick if RequiresTick is true

code: virtual void Tick ( float DeltaTime )


code: FIKRigGoalArrayLayout ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > InNodePropHandle )


code: virtual ~FIKRigGoalArrayLayout()


className: FIKRigGoalArrayLayout

code: class FIKRigGoalArrayLayout : public [IDetailCustomNodeBuilder](API\Editor\PropertyEditor\IDetailCustomNodeBuilder), public [TSharedFromThis< FIKRigGoalArrayLayout >](API\Runtime\Core\Templates\TSharedFromThis)


description: IDetailCustomNodeBuilderInterface

code: virtual void GenerateHeaderRowContent ( [FDetailWidgetRow](API\Editor\PropertyEditor\FDetailWidgetRow) & InOutGoalRow )


code: static [FName](API\Runtime\Core\UObject\FName) GetGoalName ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > InGoalHandle )


code: FIKRigGoalLayout ( [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) > InGoalPropHandle, const bool InExposePosition, const bool InExposeRotation )


description: Called to propagate data from the internal node to the preview in Persona.

code: virtual void CopyNodeDataToPreviewNode ( [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InPreviewNode )


description: Override point to create custom pins

code: virtual void CreateCustomPins ( [TArray](API\Runtime\Core\Containers\TArray)< [UEdGraphPin](API\Runtime\Engine\EdGraph\UEdGraphPin) * > * OldPins )


description: Can customize details tab

code: virtual void CustomizeDetails ( [IDetailLayoutBuilder](API\Editor\PropertyEditor\IDetailLayoutBuilder) & DetailBuilder )


className: FIKRigGoalLayout

code: class FIKRigGoalLayout : public [IDetailCustomNodeBuilder](API\Editor\PropertyEditor\IDetailCustomNodeBuilder), public [TSharedFromThis< FIKRigGoalLayout >](API\Runtime\Core\Templates\TSharedFromThis)


description: Draw function for supporting visualization.

code: virtual void Draw ( [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI, [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * PreviewSkelMeshComp ) const


description: Customize pin data based on the input

code: virtual void CustomizePinData ( [UEdGraphPin](API\Runtime\Engine\EdGraph\UEdGraphPin) * Pin, [FName](API\Runtime\Core\UObject\FName) SourcePropertyName, int32 ArrayIndex ) const


description: Internal node accessor

code: virtual [FAnimNode_CustomProperty](API\Runtime\Engine\Animation\FAnimNode_CustomProperty) * GetCustomPropertyNode()


code: virtual const [FAnimNode_CustomProperty](API\Runtime\Engine\Animation\FAnimNode_CustomProperty) * GetCustomPropertyNode() const


description: Bydefault return any animation assets we have.

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetJumpTargetForDoubleClick() const


description: Gets the name of this node, shown in title bar

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTitle ( [ENodeTitleType::Type](API\Runtime\Engine\EdGraph\ENodeTitleType__Type) TitleType ) const


description: Whether this node needs a valid target class up-front.

code: virtual bool NeedsToSpecifyValidTargetClass() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Gives each visual node a chance to do final validation before it's node is harvested for use at runtime.

code: virtual void ValidateAnimNodeDuringCompilation ( [USkeleton](API\Runtime\Engine\Animation\USkeleton) * ForSkeleton, [FCompilerResultsLog](API\Editor\UnrealEd\Kismet2\FCompilerResultsLog) & MessageLog )


className: AnimModeName

code: static const [FName](API\Runtime\Core\UObject\FName) AnimModeName;


description: Editor node for IKRig.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAnimGraphNode_IKRig : public [UAnimGraphNode_CustomProperty](API\Editor\AnimGraph\UAnimGraphNode_CustomProperty)


code: virtual ~UAnimGraphNode_IKRig()


code: virtual void CopyNodeDataToPreviewNode ( [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InPreviewNode )


description:
Override this function to push an editor mode when this node is selected
the editor mode to use when this node is selected

code: virtual FEditorModeID GetEditorMode() const


description: Called before compilation begins, giving a blueprint time to force the linker to load data

code: virtual void PreloadRequiredAssets()


description: If using CopyPoseFromMesh, the AnimBlueprint Compiler will cache this off for optimizations.

code: virtual bool UsingCopyPoseFromMesh() const


description: Editor node for IKRig.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAnimGraphNode_RetargetPoseFromMesh : public [UAnimGraphNode_Base](API\Editor\AnimGraph\UAnimGraphNode_Base)