Navigation
API > API/Plugins > API/Plugins/AnimationWarpingRuntime > API/Plugins/AnimationWarpingRuntime/BoneControllers
Inheritance Hierarchy
- FAnimNode_SkeletalControlBase
- FAnimNode_OrientationWarping
References
| Module | AnimationWarpingRuntime |
| Header | /Engine/Plugins/Animation/AnimationWarping/Source/Runtime/Public/BoneControllers/AnimNode_OrientationWarping.h |
| Include | #include "BoneControllers/AnimNode_OrientationWarping.h" |
Syntax
USTRUCT (BlueprintInternalUseOnly)
struct FAnimNode_OrientationWarping : public FAnimNode_SkeletalControlBase
Remarks
Maintains a look at direction for the upper body (orientation), while rotating the lower body to match capsule velocity direction Does nothing if the root motion velocity direction matches the desired / current capsule velocity direction
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bCounterCompenstateInterpolationByRootMotion | Whether to counter compensate interpolation by the animated root motion angle change over time. | |
| bool | bEnableDebugDraw | Enable/Disable orientation warping debug drawing. | |
| bool | bScaleByGlobalBlendWeight | ||
| bool | bUseManualRootMotionVelocity | ||
| float | CounterCompensateInterpSpeed | Same as RotationInterpSpeed, but for CounterCompensate smoothing. | |
| TObjectPtr< UAnimationAsset > | CurrentAnimAsset | Experimental. | |
| float | CurrentAnimAssetTime | Experimental. Current playback time in seconds of the CurrentAnimAsset. | |
| float | DebugDrawScale | Scale all debug drawing visualization by a factor. | |
| float | DistributedBoneOrientationAlpha | Specifies how much rotation is applied to the character body versus IK feet. | |
| TArray< FBoneReference > | IKFootBones | IK Foot definitions. | |
| FBoneReference | IKFootRootBone | IK Foot Root Bone definition. | |
| float | LocomotionAngle | The character locomotion angle (in degrees) relative to the specified RotationAxis This will be used in the following equation for computing the orientation angle: [Orientation = RotationBetween(RootMotionDirection, LocomotionDirection)] In most cases, this is the difference between the Velocity of the Movement Component and the actor rotation (obtained via CalculateDirection) | |
| float | LocomotionAngleDeltaThreshold | Specifies an angle threshold to prevent erroneous over-rotation of the character, disabled with a value of 0 | |
| FVector | LocomotionDirection | The character movement direction vector in world space When set, this vector is used to compute LocomotionAngle automatically. | |
| FVector | ManualRootMotionVelocity | ||
| float | MaxCorrectionDegrees | Max correction we're allowed to do per-second when using interpolation. | |
| float | MaxRootMotionDeltaToCompensateDegrees | Don't compensate our interpolator when the instantaneous root motion delta is higher than this. This is likely a pivot. | |
| float | MinRootMotionSpeedThreshold | Minimum root motion speed required to apply orientation warping This is useful to prevent unnatural re-orientation when the animation has a portion with no root motion (i.e starts/stops/idles) When this value is greater than 0, it's recommended to enable interpolation with RotationInterpSpeed > 0 | |
| EWarpingEvaluationMode | Mode | Orientation warping evaluation mode (Graph or Manual) | |
| float | OrientationAngle | The desired orientation angle (in degrees) to warp by relative to the specified RotationAxis. | |
| TEnumAsByte< EAxis::Type > | RotationAxis | Rotation axis used when rotating the character body. | |
| float | RotationInterpSpeed | Specifies the interpolation speed (in Alpha per second) towards reaching the final warped rotation angle A value of 0 will cause instantaneous rotation, while a greater value will introduce smoothing | |
| TArray< FBoneReference > | SpineBones | Spine bone definitions Used to counter rotate the body in order to keep the character facing forward The amount of counter rotation applied is driven by DistributedBoneOrientationAlpha | |
| float | TargetTime | Experimental. | |
| EOrientationWarpingSpace | WarpingSpace | ||
| FTransform | WarpingSpaceTransform |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | EvaluateSkeletalControl_AnyThread
(
FComponentSpacePoseContext& Output, |
||
| void | GatherDebugData
(
FNodeDebugData& DebugData |
||
| void | Initialize_AnyThread
(
const FAnimationInitializeContext& Context |
||
| bool | IsValidToEvaluate
(
const USkeleton* Skeleton, |
||
| void | UpdateInternal
(
const FAnimationUpdateContext& Context |