Navigation
API > API/Plugins > API/Plugins/AnimationWarpingRuntime
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
| Name | FAnimNode_OrientationWarping |
| Type | struct |
| Header File | /Engine/Plugins/Animation/AnimationWarping/Source/Runtime/Public/BoneControllers/AnimNode_OrientationWarping.h |
| Include Path | #include "BoneControllers/AnimNode_OrientationWarping.h" |
Syntax
USTRUCT (BlueprintInternalUseOnly)
struct FAnimNode_OrientationWarping : public FAnimNode_SkeletalControlBase
Inheritance Hierarchy
- FAnimNode_Base → FAnimNode_SkeletalControlBase → FAnimNode_OrientationWarping
Structs
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bCounterCompenstateInterpolationByRootMotion | bool | Whether to counter compensate interpolation by the animated root motion angle change over time. | BoneControllers/AnimNode_OrientationWarping.h |
|
| bEnableDebugDraw | bool | Enable/Disable orientation warping debug drawing. | BoneControllers/AnimNode_OrientationWarping.h |
|
| bScaleByGlobalBlendWeight | bool | BoneControllers/AnimNode_OrientationWarping.h |
|
|
| bUseManualRootMotionVelocity | bool | BoneControllers/AnimNode_OrientationWarping.h |
|
|
| CounterCompensateInterpSpeed | float | Same as RotationInterpSpeed, but for CounterCompensate smoothing. | BoneControllers/AnimNode_OrientationWarping.h |
|
| CurrentAnimAsset | TObjectPtr< UAnimationAsset > | Experimental. | BoneControllers/AnimNode_OrientationWarping.h |
|
| CurrentAnimAssetTime | float | Experimental. Current playback time in seconds of the CurrentAnimAsset. | BoneControllers/AnimNode_OrientationWarping.h |
|
| DebugDrawScale | float | Scale all debug drawing visualization by a factor. | BoneControllers/AnimNode_OrientationWarping.h |
|
| DistributedBoneOrientationAlpha | float | Specifies how much rotation is applied to the character body versus IK feet. | BoneControllers/AnimNode_OrientationWarping.h |
|
| IKFootBones | TArray< FBoneReference > | IK Foot definitions. | BoneControllers/AnimNode_OrientationWarping.h |
|
| IKFootRootBone | FBoneReference | IK Foot Root Bone definition. | BoneControllers/AnimNode_OrientationWarping.h |
|
| LocomotionAngle | float | 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) | BoneControllers/AnimNode_OrientationWarping.h |
|
| LocomotionAngleDeltaThreshold | float | Specifies an angle threshold to prevent erroneous over-rotation of the character, disabled with a value of 0 | BoneControllers/AnimNode_OrientationWarping.h |
|
| LocomotionDirection | FVector | The character movement direction vector in world space When set, this vector is used to compute LocomotionAngle automatically. | BoneControllers/AnimNode_OrientationWarping.h |
|
| ManualRootMotionVelocity | FVector | BoneControllers/AnimNode_OrientationWarping.h |
|
|
| MaxCorrectionDegrees | float | Max correction we're allowed to do per-second when using interpolation. | BoneControllers/AnimNode_OrientationWarping.h |
|
| MaxRootMotionDeltaToCompensateDegrees | float | Don't compensate our interpolator when the instantaneous root motion delta is higher than this. This is likely a pivot. | BoneControllers/AnimNode_OrientationWarping.h |
|
| MinRootMotionSpeedThreshold | float | 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 | BoneControllers/AnimNode_OrientationWarping.h |
|
| Mode | EWarpingEvaluationMode | Orientation warping evaluation mode (Graph or Manual) | BoneControllers/AnimNode_OrientationWarping.h |
|
| OrientationAngle | float | The desired orientation angle (in degrees) to warp by relative to the specified RotationAxis. | BoneControllers/AnimNode_OrientationWarping.h |
|
| RotationAxis | TEnumAsByte< EAxis::Type > | Rotation axis used when rotating the character body. | BoneControllers/AnimNode_OrientationWarping.h |
|
| RotationInterpSpeed | float | 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 | BoneControllers/AnimNode_OrientationWarping.h |
|
| SpineBones | TArray< FBoneReference > | 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 | BoneControllers/AnimNode_OrientationWarping.h |
|
| TargetTime | float | Experimental. | BoneControllers/AnimNode_OrientationWarping.h |
|
| WarpingSpace | EOrientationWarpingSpace | BoneControllers/AnimNode_OrientationWarping.h |
|
|
| WarpingSpaceTransform | FTransform | BoneControllers/AnimNode_OrientationWarping.h |
|
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ActualOrientationAngleRad | float | Internal orientation warping angle. | BoneControllers/AnimNode_OrientationWarping.h | |
| bFoundRootMotionAttribute | bool | Whether we found a root motion delta attribute in the attribute stream on graph driven mode. | BoneControllers/AnimNode_OrientationWarping.h | |
| bIsFirstUpdate | bool | BoneControllers/AnimNode_OrientationWarping.h | ||
| BlendWeight | float | BoneControllers/AnimNode_OrientationWarping.h | ||
| bUsedFutureRootMotion | bool | BoneControllers/AnimNode_OrientationWarping.h | ||
| CounterCompensateTargetAngleRad | float | Target for counter compenstate, we keep the target so we can smoothly interp. | BoneControllers/AnimNode_OrientationWarping.h | |
| DebugColor | FColor | Stored from blend message, used to match with rewind debugger. | BoneControllers/AnimNode_OrientationWarping.h | |
| FutureRootMotionDeltaDirection | FVector | Store prediction in debug only so that they can persist across pauses. | BoneControllers/AnimNode_OrientationWarping.h | |
| IKFootData | FOrientationWarpingFootData | Computed IK bone indices for the specified foot definitions. | BoneControllers/AnimNode_OrientationWarping.h | |
| RootMotionDeltaDirection | FVector | Internal current frame root motion delta direction. | BoneControllers/AnimNode_OrientationWarping.h | |
| RootMotionDeltaRotation | FQuat | Internal current frame root motion delta angle. | BoneControllers/AnimNode_OrientationWarping.h | |
| SpineBoneDataArray | TArray< FOrientationWarpingSpineBoneData > | Computed spine bone indices and alpha weights for the specified spine definition. | BoneControllers/AnimNode_OrientationWarping.h | |
| UpdateCounter | FGraphTraversalCounter | BoneControllers/AnimNode_OrientationWarping.h |
Functions
Public
Overridden from FAnimNode_SkeletalControlBase
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void EvaluateSkeletalControl_AnyThread
(
FComponentSpacePoseContext& Output, |
BoneControllers/AnimNode_OrientationWarping.h | ||
virtual bool IsValidToEvaluate
(
const USkeleton* Skeleton, |
BoneControllers/AnimNode_OrientationWarping.h | ||
virtual void UpdateInternal
(
const FAnimationUpdateContext& Context |
BoneControllers/AnimNode_OrientationWarping.h |
Overridden from FAnimNode_Base
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void GatherDebugData
(
FNodeDebugData& DebugData |
BoneControllers/AnimNode_OrientationWarping.h | ||
virtual void Initialize_AnyThread
(
const FAnimationInitializeContext& Context |
BoneControllers/AnimNode_OrientationWarping.h |