The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall
UE3:AnimSequence (UDK)
Object >> AnimSequence |
Contents
- 1 Properties
- 1.1 Property group 'AnimSequence'
- 1.2 Internal variables
- 1.2.1 AdditiveBasePose
- 1.2.2 AdditiveBasePoseAnimSeq
- 1.2.3 AdditiveRefName
- 1.2.4 AdditiveRefPose
- 1.2.5 AdditiveTargetPoseAnimSeq
- 1.2.6 AnimTags
- 1.2.7 bAdditiveBuiltLooping
- 1.2.8 bHasBeenUsed
- 1.2.9 bIsAdditive
- 1.2.10 BoneControlModifiers
- 1.2.11 CompressedByteStream
- 1.2.12 CompressedTrackOffsets
- 1.2.13 CurveData
- 1.2.14 EncodingPkgVersion
- 1.2.15 KeyEncodingFormat
- 1.2.16 NumFrames
- 1.2.17 RawAnimationData
- 1.2.18 RawAnimData
- 1.2.19 RelatedAdditiveAnimSeqs
- 1.2.20 RotationCodec
- 1.2.21 RotationCompressionFormat
- 1.2.22 RotationData
- 1.2.23 SequenceLength
- 1.2.24 SequenceName
- 1.2.25 TranslationCodec
- 1.2.26 TranslationCompressionFormat
- 1.2.27 TranslationData
- 1.2.28 UseScore
- 2 Enums
- 3 Structs
- 4 Native functions
This is an auto-generated page and may need human attention. Please remove the {{autogenerated}} tag if the page seems reasonably complete or replace it with the {{expand}} tag if the page is not yet complete. |
One animation sequence of keyframes. Contains a number of tracks of data. The Outer of AnimSequence is expected to be its AnimSet.
Properties
Property group 'AnimSequence'
bDoNotOverrideCompression
Type: bool
Modifiers: editoronly, const
Do not attempt to override compression scheme when running CompressAnimations commandlet. Some high frequency animations are too sensitive and shouldn't be changed.
bNoLoopingInterpolation
Type: bool
if TRUE, disable interpolation between last and first frame when looping.
CompressionScheme
Type: AnimationCompressionAlgorithm
Modifiers: editinline, editconst, editoronly
The compression scheme that was most recently used to compress this animation. May be NULL.
MetaData
Type: array<AnimMetaData>
Modifiers: editinline, instanced
Animation Meta Data
Notifies
Type: array<AnimNotifyEvent>
Modifiers: editinline
Animation notifies, sorted by time (earliest notification first).
RateScale
Type: float
Number for tweaking playback rate of this animation globally.
Default value: 1.0
Internal variables
AdditiveBasePose
Type: array<RawAnimSequenceTrack>
Modifiers: const
Store Reference Pose animation used to create this additive one. For playback in editor only.
AdditiveBasePoseAnimSeq
Type: array<AnimSequence>
Modifiers: editoronly
If this animation is Additive, this is the reference to the Base Pose used. For automatic rebuilding in the editor. Made into a list to handle duplicate animations.
AdditiveRefName
Type: name
Modifiers: const, editoronly
Reference animation name
AdditiveRefPose
Type: array<Object.BoneAtom>
Modifiers: const, deprecated
Reference pose for additive animation. Deprecated.
AdditiveTargetPoseAnimSeq
Type: array<AnimSequence>
Modifiers: editoronly
If this animation is Additive, this is the reference to the Target Pose used. For automatic rebuilding in the editor. Made into a list to handle duplicate animations.
AnimTags
Modifiers: config, editoronly
Animation tag for stat system: This is temporary until we can add content tag to animation Currently it auto tags based on "contains" - Check DefaultEngine.ini for modification
bAdditiveBuiltLooping
Type: bool
Modifiers: editoronly
TRUE if additive animation was built with looping interpolation.
bHasBeenUsed
Type: bool
Modifiers: const, transient
Debug flag to trace if this anim sequence was played.
bIsAdditive
Type: bool
Modifiers: const
TRUE if this is an Additive Animation
BoneControlModifiers
Type: array<SkelControlModifier>
Modifiers: deprecated, editinline
DEPRECATED VER_ADDED_ANIM_METADATA_FIXED_QUATERROR Bone Control Modifiers, sorted by time (earliest notification first).
CompressedByteStream
Modifiers: native
ByteStream for compressed animation data. All keys are currently stored at evenly-spaced intervals (ie no explicit key times).
For a translation track of n keys, data is packed as n uncompressed float[3]:
For a rotation track of n>1 keys, the first 24 bytes are reserved for compression info (eg Fixed32 stores float Mins[3]; float Ranges[3]), followed by n elements of the compressed type. For a rotation track of n=1 keys, the single key is packed as an FQuatFloat96NoW.
CompressedTrackOffsets
An array of 4*NumTrack ints, arranged as follows:
[0] Trans0.Offset [1] Trans0.NumKeys [2] Rot0.Offset [3] Rot0.NumKeys [4] Trans1.Offset . . .
CurveData
Type: array<CurveTrack>
Modifiers: const
EncodingPkgVersion
Type: int
Modifiers: const
The version of the global encoding package used at the time of import
KeyEncodingFormat
Type: AnimationKeyFormat
Modifiers: const
NumFrames
Type: int
Number of raw frames in this sequence (not used by engine - just for informational purposes).
RawAnimationData
Type: array<RawAnimSequenceTrack>
Modifiers: native, private, const
RawAnimData
Type: array<RawAnimSequenceTrack>
Modifiers: deprecated, private, const
Raw uncompressed keyframe data. RawAnimData is deprecated and moved to RawAnimationData to switch to native serialization. Down the road it should be switched to use lazy loading as the data is only used in the editor. It is used pervasively enough to be a separate change.
RelatedAdditiveAnimSeqs
Type: array<AnimSequence>
Modifiers: editoronly
If this animation was used, either as a Base or Target Pose, to build additive animations, they are referenced there. For automatic rebuilding in the editor.
RotationCodec
Type: pointer
Modifiers: private, transient, native
RotationCompressionFormat
Type: AnimationCompressionFormat
Modifiers: const
The compression format that was used to compress rotation tracks.
RotationData
Type: array<RotationTrack>
Modifiers: transient, const
Rotation data post keyframe reduction. RotationData.Num() is zero if keyframe reduction has not yet been applied.
SequenceLength
Type: float
Length (in seconds) of this AnimSequence if played back with a speed of 1.0.
SequenceName
Type: name
Name of the animation sequence. Used in AnimNodeSequence.
TranslationCodec
Type: pointer
Modifiers: private, transient, native
The runtime interface to decode and byte swap the compressed animation May be NULL. Set at runtime - does not exist in editor
TranslationCompressionFormat
Type: AnimationCompressionFormat
Modifiers: const
The compression format that was used to compress translation tracks.
TranslationData
Type: array<TranslationTrack>
Modifiers: transient, const
Translation data post keyframe reduction. TranslationData.Num() is zero if keyframe reduction has not yet been applied.
UseScore
Type: float
Modifiers: const, transient
Debug score to find out animation usage
Enums
AnimationCompressionFormat
Indicates animation data compression format.
- ACF_None
- ACF_Float96NoW
- ACF_Fixed48NoW
- ACF_IntervalFixed32NoW
- ACF_Fixed32NoW
- ACF_Float32NoW
AnimationKeyFormat
Indicates animation data compression format.
- AKF_ConstantKeyLerp
- AKF_VariableKeyLerp
Structs
AnimNotifyEvent
Modifiers: native
- float Time
- AnimNotify Notify
- name Comment
- float Duration
AnimTag
Modifiers: native
Temporary Animation Tagging Information: until we integrate Content Tagging This is configurable information in Engine Tag: Name of Tag Contains: Contains text Priority is index of array
- string Tag
- This is Tag name
- array<string> Contains
- This is contains strings, i.e. _cvr_ or _cover_ for Tag name Cover
CompressedTrack
Modifiers: native
CurveTrack
Modifiers: native
Key frame curve data for one track CurveName: Morph Target Name CurveWeights: List of weights for each frame
RawAnimSequenceTrack
Raw keyframe data for one track. Each array will contain either NumFrames elements or 1 element. One element is used as a simple compression scheme where if all keys are the same, they'll be reduced to 1 key that is constant over the entire sequence.
Warning: manually mirrored in UnMiscDeclerations.h due to mixed native/ script serialization
- array<Object.Vector> PosKeys
- Position keys.
- array<Object.Quat> RotKeys
- Rotation keys.
RotationTrack
Modifiers: native
Keyframe rotation data for one track. Rot(i) occurs at Time(i). Rot.Num() always equals Time.Num().
- array<Object.Quat> RotKeys
- array<float> Times
SkelControlModifier
Modifiers: native
- name SkelControlName
- SkelControl Node Name in the Anim Tree that would apply *
- array<TimeModifier> Modifiers
- Modifiers for what time and what strength for this skelcontrol name*
TimeModifier
Modifiers: native
- float Time
- Time to apply *
- float TargetStrength
- This will linearly interpolate between multiple strength within one anim data*
TranslationTrack
Modifiers: native
Keyframe position data for one track. Pos(i) occurs at Time(i). Pos.Num() always equals Time.Num().
- array<Object.Vector> PosKeys
- array<float> Times
Native functions
GetNotifyTimeByClass
Get the time (in seconds) from the start of the animation that the first notify of the given class would fire
Parameters:
- NotifyClass - Class of AnimNotify we are looking for (ie AnimNotify_Sound)
- PlayRate - Rate that animation would be played at
- StartPosition - Initial position in the animation to start checking from
Returns:
- Time in seconds that notify would fire if anim was played at given rate Returns -1.f if no notify is found