Navigation
API > API/Runtime > API/Runtime/AnimGraphRuntime > API/Runtime/AnimGraphRuntime/BoneControllers
Inheritance Hierarchy
- FAnimNode_Base
- FAnimNode_SkeletalControlBase
- FAnimNode_TwoBoneIK
References
| Module | AnimGraphRuntime |
| Header | /Engine/Source/Runtime/AnimGraphRuntime/Public/BoneControllers/AnimNode_TwoBoneIK.h |
| Include | #include "BoneControllers/AnimNode_TwoBoneIK.h" |
Syntax
struct FAnimNode_TwoBoneIK : public FAnimNode_SkeletalControlBase
Remarks
Simple 2 Bone IK Controller.
Variables
| Type | Name | Description | |
|---|---|---|---|
| uint8: 1 | bAllowStretching | Should stretching be allowed, to be prevent over extension | |
| uint8: 1 | bAllowTwist | Whether or not to apply twist on the chain of joints. | |
| uint8: 1 | bMaintainEffectorRelRot | Keep local rotation of end bone | |
| uint8: 1 | bTakeRotationFromEffectorSpace | Set end bone to use End Effector rotation | |
| FCompactPoseBoneIndex | CachedLowerLimbIndex | Cached limb index for lower | |
| FCompactPoseBoneIndex | CachedUpperLimbIndex | Cached limb index for upper | |
| FVector | EffectorLocation | Effector Location. Target Location to reach. | |
| TEnumAsByte< enum EBoneControlSpace > | EffectorLocationSpace | Reference frame of Effector Location. | |
| FBoneSocketTarget | EffectorTarget | ||
| FBoneReference | IKBone | Name of bone to control. This is the main bone chain to modify from. | |
| FBoneSocketTarget | JointTarget | ||
| FVector | JointTargetLocation | Joint Target Location. Location used to orient Joint bone. | |
| TEnumAsByte< enum EBoneControlSpace > | JointTargetLocationSpace | Reference frame of Joint Target Location. | |
| double | MaxStretchScale | Limits to use if stretching is allowed. | |
| double | StartStretchRatio | Limits to use if stretching is allowed. | |
| FAxis | TwistAxis | Specify which axis it's aligned. Used when removing twist |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | ConditionalDebugDraw
(
FPrimitiveDrawInterface* PDI, |
||
| FTransform | GetTargetTransform
(
const FTransform& InComponentTransform, |
Overridden from FAnimNode_SkeletalControlBase
| Type | Name | Description | |
|---|---|---|---|
| void | EvaluateSkeletalControl_AnyThread
(
FComponentSpacePoseContext& Output, |
Evaluate the new component-space transforms for the affected bones. | |
| bool | IsValidToEvaluate
(
const USkeleton* Skeleton, |
Return true if it is valid to Evaluate |
Overridden from FAnimNode_Base
| Type | Name | Description | |
|---|---|---|---|
| void | GatherDebugData
(
FNodeDebugData& DebugData |
Called to gather on-screen debug data. This is called on the game thread. | |
| void | Initialize_AnyThread
(
const FAnimationInitializeContext& Context |
Called when the node first runs. |
Deprecated Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bNoTwist_DEPRECATED | Whether or not to apply twist on the chain of joints. | |
| FName | EffectorSpaceBoneName_DEPRECATED | If EffectorLocationSpace is a bone, this is the bone to use. | |
| FName | JointTargetSpaceBoneName_DEPRECATED | If JointTargetSpaceBoneName is a bone, this is the bone to use. | |
| FVector2D | StretchLimits_DEPRECATED | Limits to use if stretching is allowed - old property DEPRECATED |