G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
FAnimNode_OrientationWarping Struct Reference

Public Member Functions

Functions
FAnimNode_OrientationWarping & opAssign (FAnimNode_OrientationWarping Other)
Public Member Functions inherited from FAnimNode_SkeletalControlBase
FAnimNode_SkeletalControlBase & opAssign (FAnimNode_SkeletalControlBase Other)

Public Attributes

Alpha
FInputScaleBias AlphaScaleBias
float32 Alpha
 Current strength of the skeletal control.
FInputAlphaBoolBlend AlphaBoolBlend
EAnimAlphaInputType AlphaInputType
bool bAlphaBoolEnabled
FInputScaleBiasClamp AlphaScaleBiasClamp
FName AlphaCurveName
Debug
float32 DebugDrawScale
 Scale all debug drawing visualization by a factor.
bool bEnableDebugDraw
 Enable/Disable orientation warping debug drawing.
Evaluation
FTransform WarpingSpaceTransform
float32 LocomotionAngleDeltaThreshold
 Specifies an angle threshold to prevent erroneous over-rotation of the character, disabled with a value of 0.
float32 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.
float32 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)].
FVector LocomotionDirection
 The character movement direction vector in world space This will be used to compute LocomotionAngle automatically.
float32 OrientationAngle
 The desired orientation angle (in degrees) to warp by relative to the specified RotationAxis.
EWarpingEvaluationMode Mode
 Orientation warping evaluation mode (Graph or Manual).
EOrientationWarpingSpace WarpingSpace
Experimental
FVector ManualRootMotionVelocity
bool bUseManualRootMotionVelocity
bool bScaleByGlobalBlendWeight
Links
FComponentSpacePoseLink ComponentPose
 Input link.
Performance
int LODThreshold
 Max LOD that this node is allowed to run For example if you have LODThreshold to be 2, it will run until LOD 2 (based on 0 index) when the component LOD becomes 3, it will stop update/evaluate currently transition would be issue and that has to be re-visited.
Settings
float32 MaxRootMotionDeltaToCompensateDegrees
 Don't compensate our interpolator when the instantaneous root motion delta is higher than this. This is likely a pivot.
float32 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.
float32 MaxCorrectionDegrees
 Max correction we're allowed to do per-second when using interpolation. This minimizes pops when we have a large difference between current and target orientation.
bool bCounterCompenstateInterpolationByRootMotion
 Whether to counter compensate interpolation by the animated root motion angle change over time. This helps to conserve the motion from our animation. Disable this if your root motion is expected to be jittery, and you want orientation warping to smooth it out.
float32 DistributedBoneOrientationAlpha
 Specifies how much rotation is applied to the character body versus IK feet.
EAxis RotationAxis
 Rotation axis used when rotating the character body.
TArray< FBoneReference > IKFootBones
 IK Foot definitions.
FBoneReference IKFootRootBone
 IK Foot Root Bone definition.
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.
Public Attributes inherited from FAnimNode_SkeletalControlBase
float32 Alpha
 Current strength of the skeletal control.
EAnimAlphaInputType AlphaInputType
bool bAlphaBoolEnabled
FName AlphaCurveName
FInputScaleBias AlphaScaleBias
FInputAlphaBoolBlend AlphaBoolBlend
FInputScaleBiasClamp AlphaScaleBiasClamp
FComponentSpacePoseLink ComponentPose
 Input link.
int LODThreshold
 Max LOD that this node is allowed to run For example if you have LODThreshold to be 2, it will run until LOD 2 (based on 0 index) when the component LOD becomes 3, it will stop update/evaluate currently transition would be issue and that has to be re-visited.

Member Function Documentation

◆ opAssign()

Member Data Documentation

◆ Alpha

float32 Alpha

Current strength of the skeletal control.

◆ AlphaBoolBlend

FInputAlphaBoolBlend AlphaBoolBlend

◆ AlphaCurveName

FName AlphaCurveName

◆ AlphaInputType

EAnimAlphaInputType AlphaInputType

◆ AlphaScaleBias

FInputScaleBias AlphaScaleBias

◆ AlphaScaleBiasClamp

FInputScaleBiasClamp AlphaScaleBiasClamp

◆ bAlphaBoolEnabled

bool bAlphaBoolEnabled

◆ bCounterCompenstateInterpolationByRootMotion

bool bCounterCompenstateInterpolationByRootMotion

Whether to counter compensate interpolation by the animated root motion angle change over time. This helps to conserve the motion from our animation. Disable this if your root motion is expected to be jittery, and you want orientation warping to smooth it out.

◆ bEnableDebugDraw

bool bEnableDebugDraw

Enable/Disable orientation warping debug drawing.

◆ bScaleByGlobalBlendWeight

bool bScaleByGlobalBlendWeight

◆ bUseManualRootMotionVelocity

bool bUseManualRootMotionVelocity

◆ ComponentPose

FComponentSpacePoseLink ComponentPose

Input link.

◆ DebugDrawScale

float32 DebugDrawScale

Scale all debug drawing visualization by a factor.

◆ DistributedBoneOrientationAlpha

float32 DistributedBoneOrientationAlpha

Specifies how much rotation is applied to the character body versus IK feet.

◆ IKFootBones

TArray<FBoneReference> IKFootBones

IK Foot definitions.

◆ IKFootRootBone

FBoneReference IKFootRootBone

IK Foot Root Bone definition.

◆ LocomotionAngle

float32 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)].

◆ LocomotionAngleDeltaThreshold

float32 LocomotionAngleDeltaThreshold

Specifies an angle threshold to prevent erroneous over-rotation of the character, disabled with a value of 0.

When the effective orientation warping angle is detected to be greater than this value (default: 90 degrees) the locomotion direction will be inverted prior to warping This will be used in the following equation: [Orientation = RotationBetween(RootMotionDirection, -LocomotionDirection)]

Example: Playing a forward running animation while the motion is going backward Rather than orientation warping by 180 degrees, the system will warp by 0 degrees

◆ LocomotionDirection

FVector LocomotionDirection

The character movement direction vector in world space This will be used to compute LocomotionAngle automatically.

◆ LODThreshold

int LODThreshold

Max LOD that this node is allowed to run For example if you have LODThreshold to be 2, it will run until LOD 2 (based on 0 index) when the component LOD becomes 3, it will stop update/evaluate currently transition would be issue and that has to be re-visited.

◆ ManualRootMotionVelocity

FVector ManualRootMotionVelocity

◆ MaxCorrectionDegrees

float32 MaxCorrectionDegrees

Max correction we're allowed to do per-second when using interpolation. This minimizes pops when we have a large difference between current and target orientation.

◆ MaxRootMotionDeltaToCompensateDegrees

float32 MaxRootMotionDeltaToCompensateDegrees

Don't compensate our interpolator when the instantaneous root motion delta is higher than this. This is likely a pivot.

◆ MinRootMotionSpeedThreshold

float32 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.

◆ Mode

Orientation warping evaluation mode (Graph or Manual).

◆ OrientationAngle

float32 OrientationAngle

The desired orientation angle (in degrees) to warp by relative to the specified RotationAxis.

◆ RotationAxis

EAxis RotationAxis

Rotation axis used when rotating the character body.

◆ RotationInterpSpeed

float32 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.

◆ SpineBones

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.

◆ WarpingSpace

◆ WarpingSpaceTransform

FTransform WarpingSpaceTransform