Gah - a solution with more questions. – EntropicLqd

UE3:AnimNodeSequence (UDK)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UDK Object >> AnimObject >> AnimNode >> AnimNodeSequence
Package: 
Engine
Direct subclasses:
AnimNodeSequenceBlendBase, UTAnimNodeFramePlayer, UTAnimNodeSequence, UTAnimNodeSequenceByBoneRotation
This class in other games:
UT3


Properties

Property group 'AnimNodeSequence'

AnimSeqName

Type: name

Modifiers: const

This name will be looked for in all AnimSet's specified in the AnimSets array in the SkeletalMeshComponent.

bCauseActorAnimEnd

Type: bool

Should this node call the OnAnimEnd event on its parent Actor when it reaches the end and stops.

bCauseActorAnimPlay

Type: bool

Should this node call the OnAnimPlay event on its parent Actor when PlayAnim is called on it.

bDisableWarningWhenAnimNotFound

Type: bool

if TRUE, don't display a warning when animation is not found.

bForceRefposeWhenNotPlaying

Type: bool

Forces the skeletal mesh into the ref pose by setting bForceRespose on the skelmesh comp when not playing. (Optimization)

bLooping

Type: bool

If animation is looping. If false, animation will stop when it reaches end, otherwise will continue from beginning.

bNoNotifies

Type: bool

Whether any notifies in the animation sequence should be executed for this node.

bPlaying

Type: bool

Whether this animation is currently playing ie. if the CurrentTime will be advanced when Tick is called.

bZeroRootRotation

Type: bool

Always return a zero rotation (unit quaternion) for the root bone of this animation.

bZeroRootTranslation

Type: bool

Always return root bone translation at the origin.

CurrentTime

Type: float

Modifiers: const

Current position (in seconds)

NotifyWeightThreshold

Type: float

Total weight that this node must be at in the final blend for notifies to be executed. This is ignored when the node is part of a group.

Rate

Type: float

Speed at which the animation will be played back. Multiplied by the RateScale in the AnimSequence. Default is 1.0

Default value: 1.0

RootBoneOption

Type: ERootBoneAxis

Array size: 3

[X, Y, Z] axes

RootRotationOption

Type: ERootRotationOption

Array size: 3

Roll (X), Pitch (Y), Yaw (Z) axes.

Property group 'Camera'

bLoopCameraAnim

Type: bool

True to loop the CameraAnim, false for a one-off.

bRandomizeCameraAnimLoopStartTime

Type: bool

True to randomize the CameraAnims start position, so it doesn't look the same every time. Ignored if bLoopCameraAnim is false.

CameraAnim

Type: CameraAnim

Reference to the CameraAnim to play in conjunction with this animation.

CameraAnimPlayRate

Type: float

How fast to playback the camera anim.

Default value: 1.0

CameraAnimScale

Type: float

"Intensity" multiplier applied to the camera anim.

Default value: 1.0

Property group 'Display'

bShowTimeLineSlider

Type: bool

Display time line slider

Property group 'Group'

bForceAlwaysSlave

Type: bool

If TRUE, this node can never be a synchronization master node, always slave.

bReverseSync

Type: bool

Modifiers: const

Reverse synchronization. Go in opposite direction.

bSynchronize

Type: bool

Modifiers: const

TRUE by default. This node can be synchronized with others, when part of a SynchGroup. Set to FALSE if node shouldn't be synchronized, but still part of notification group.

Default value: True

SynchGroupName

Type: name

Modifiers: const

name of group this node belongs to

SynchPosOffset

Type: float

Relative position offset.

Internal variables

ActiveCameraAnimInstance

Type: CameraAnimInst

Modifiers: transient

Ref to the CameraAnimInst that is currently playing.

AnimLinkupIndex

Type: int

Modifiers: transient, const

Bone -> Track mapping info for this player node. Index into the LinkupCache array in the AnimSet. Found from AnimSet when you call SetAnim.

AnimSeq

Type: AnimSequence

Modifiers: transient, const

Pointer to actual AnimSequence. Found from SkeletalMeshComponent using AnimSeqName when you call SetAnim.

bEditorOnlyAddRefPoseToAdditiveAnimation

Type: bool

Modifiers: const

EDITOR ONLY Add Ref Pose to Additive Animation, so it can be viewed fully into the AnimSetViewer.

bIsIssuingNotifies

Type: bool

Flag that indicates if Notifies are currently being executed. Allows you to avoid doing dangerous things to this Node while this is going on.

DebugCarat

Type: Texture2D

For debugging. Small icon to show current position in animation.

Default value: Texture2D'EditorResources.AnimPlayerCarat'

DebugTrack

Type: Texture2D

For debugging. Track graphic used for showing animation position.

Default value: Texture2D'EditorResources.AnimPlayerTrack'

PreviousTime

Type: float

Modifiers: const, transient


Enums

ERootBoneAxis

This will actually call MoveActor to move the Actor owning this SkeletalMeshComponent. You can specify the behaviour for each axis (mesh space). Doing this for multiple skeletal meshes on the same Actor does not make much sense!

RBA_Default 
the default behaviour, leave root translation from animation and do no affect owning Actor movement.
RBA_Discard 
discard any root bone movement, locking it to the first frame's location.
RBA_Translate 
discard root movement on animation, and forward its velocity to the owning actor.

ERootRotationOption

Root Motion Rotation.

RRO_Default 
Default, leaves root rotation in the animation. Does not affect actor.
RRO_Discard 
Discards root rotation from the animation, locks to first frame rotation of animation. Does not affect actor's rotation.
RRO_Extract 
Discard root rotation from animation, and forwards it to the actor. (to be used by it or not).

Native functions

FindGroupPosition

native function float FindGroupPosition (float GroupRelativePosition) const

Finds out position of a synchronized node given a relative position of a group. Takes into account node's relative SynchPosOffset.

FindGroupRelativePosition

native function float FindGroupRelativePosition (float GroupRelativePosition) const

Finds out normalized position of a synchronized node given a relative position of a group. Takes into account node's relative SynchPosOffset.

GetAnimPlaybackLength

native function float GetAnimPlaybackLength ()

Returns the duration (in seconds) of the current animation at the current play rate. Returns 0.0 if no animation.

GetGlobalPlayRate

native function float GetGlobalPlayRate ()

Returns the global play rate of this animation. Taking into account all Rate Scales

GetGroupRelativePosition

native function float GetGroupRelativePosition () const

Get relative position of a synchronized node. Taking into account node's relative offset.

GetNormalizedPosition

native function float GetNormalizedPosition () const

Get normalized position, from 0.f to 1.f.

GetTimeLeft

native function float GetTimeLeft ()

Returns in seconds the time left until the animation is done playing. This is assuming the play rate is not going to change.

PlayAnim

native function PlayAnim (bool bLoop, float InRate, float StartTime)

Overrides: AnimNode.PlayAnim

Start the current animation playing with the supplied parameters.

ReplayAnim

native function ReplayAnim ()

Overrides: AnimNode.ReplayAnim


SetAnim

native function SetAnim (name Sequence)

Change the animation this node is playing to the new name. Will be looked up in owning SkeletaMeshComponent's AnimSets array.

SetPosition

native function SetPosition (float NewTime, bool bFireNotifies)

Force the animation to a particular time. NewTime is in seconds.

StopAnim

native function StopAnim ()

Overrides: AnimNode.StopAnim

Stop the current animation playing. CurrentTime will stay where it was.