Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.AnimSequence

Extends
Object
Modifiers
native ( Anim ) config ( Engine ) hidecategories ( Object )

One animation sequence of keyframes. Contains a number of tracks of data. The Outer of AnimSequence is expected to be its AnimSet. Copyright 1998-2011 Epic Games, Inc. All Rights Reserved.

Core.Object
|   
+-- Engine.AnimSequence

Constants Summary
Inherited Contants from Core.Object
AspectRatio16x9, AspectRatio4x3, AspectRatio5x4, DegToRad, DegToUnrRot, INDEX_NONE, InvAspectRatio16x9, InvAspectRatio4x3, InvAspectRatio5x4, MaxInt, Pi, RadToDeg, RadToUnrRot, UnrRotToDeg, UnrRotToRad

Variables Summary
Array<RawAnimSequenceTrack>AdditiveBasePose
Array<AnimSequence>AdditiveBasePoseAnimSeq
NameAdditiveRefName
Array<BoneAtom>AdditiveRefPose
Array<AnimSequence>AdditiveTargetPoseAnimSeq
array<AnimTag>AnimTags
boolbAdditiveBuiltLooping
boolbHasBeenUsed
boolbIsAdditive
array<SkelControlModifier>BoneControlModifiers
intCompressCommandletVersion
array<byte>CompressedByteStream
array<int>CompressedTrackOffsets
array<CurveTrack>CurveData
intEncodingPkgVersion
AnimationKeyFormatKeyEncodingFormat
intNumFrames
array<RawAnimSequenceTrack>RawAnimationData
array<RawAnimSequenceTrack>RawAnimData
Array<AnimSequence>RelatedAdditiveAnimSeqs
pointerRotationCodec
AnimationCompressionFormatRotationCompressionFormat
array<RotationTrack>RotationData
floatSequenceLength
nameSequenceName
pointerTranslationCodec
AnimationCompressionFormatTranslationCompressionFormat
array<TranslationTrack>TranslationData
floatUseScore
AnimSequence
boolbDoNotOverrideCompression
boolbNoLoopingInterpolation
AnimationCompressionAlgorithmCompressionScheme
Array<AnimMetaData>MetaData
array<AnimNotifyEvent>Notifies
floatRateScale
Inherited Variables from Core.Object
Class, HashNext, HashOuterNext, Linker, LinkerIndex, Name, NetIndex, ObjectArchetype, ObjectFlags, ObjectInternalInteger, Outer, StateFrame, VfTableObject

Enumerations Summary
AnimationCompressionFormat
ACF_None, ACF_Float96NoW, ACF_Fixed48NoW, ACF_IntervalFixed32NoW, ACF_Fixed32NoW, ACF_Float32NoW, ACF_Identity
AnimationKeyFormat
AKF_ConstantKeyLerp, AKF_VariableKeyLerp, AKF_PerTrackCompression,
Inherited Enumerations from Core.Object
AlphaBlendType, EAspectRatioAxisConstraint, EAutomatedRunResult, EAxis, EDebugBreakType, EInputEvent, EInterpCurveMode, EInterpMethodType, ETickingGroup

Structures Summary
AnimNotifyEvent
Time, Notify, Comment, Duration
AnimTag
Tag, Contains
CompressedTrack
ByteStream, Times, Mins[3], Ranges[3]
CurveTrack
CurveName, CurveWeights
RawAnimSequenceTrack
PosKeys, RotKeys
RotationTrack
RotKeys, Times
SkelControlModifier
SkelControlName, Modifiers
TimeModifier
Time, TargetStrength
TranslationTrack
PosKeys, Times
Inherited Structures from Core.Object
Array_Mirror, BitArray_Mirror, BoneAtom, Box, BoxSphereBounds, Color, Cylinder, double, FColorVertexBuffer_Mirror, Guid, IndirectArray_Mirror, InlinePointerArray_Mirror, InterpCurveFloat, InterpCurveLinearColor, InterpCurvePointFloat, InterpCurvePointLinearColor, InterpCurvePointQuat, InterpCurvePointTwoVectors, InterpCurvePointVector, InterpCurvePointVector2D, InterpCurveQuat, InterpCurveTwoVectors, InterpCurveVector, InterpCurveVector2D, IntPoint, LinearColor, Map_Mirror, Matrix, MultiMap_Mirror, OctreeElementId, Plane, pointer, Quat, qword, RawDistribution, RenderCommandFence, RenderCommandFence_Mirror, Rotator, Set_Mirror, SHVector, SHVectorRGB, SparseArray_Mirror, TAlphaBlend, ThreadSafeCounter, TPOV, TwoVectors, UntypedBulkData_Mirror, Vector, Vector2D, Vector4

Functions Summary
functionfloat GetNotifyTimeByClass (class<AnimNotify> NotifyClass, optional float PlayRate = 1.f, optional float StartPosition = -1.f, optional out AnimNotify out_Notify, optional out float out_Duration)
Inherited Functions from Core.Object
!, !=, $, $=, %, &, &&, *, **, *=, +, ++, +=, -, --, -=, / , /=, <, <<, <=, ==, >, >=, >>, >>>, @, @=, Abs, Acos, Asc, Asin, Atan, Atan2, BeginState, ByteToFloat, Caps, Chr, Clamp, ClampLength, ClampRotAxis, ClampRotAxisFromBase, ClampRotAxisFromRange, ClassIsChildOf, ClockwiseFrom, ColorToLinearColor, ContinuedState, Cos, Cross, DebugBreak, Disable, Dot, DumpStateStack, DynamicLoadObject, Enable, EndState, EvalInterpCurveFloat, EvalInterpCurveVector, EvalInterpCurveVector2D, Exp, FCeil, FClamp, FCubicInterp, FFloor, FindDeltaAngle, FindObject, FInterpConstantTo, FInterpEaseIn, FInterpEaseInOut, FInterpEaseOut, FInterpTo, float, FloatToByte, FMax, FMin, FPctByRange, FRand, GetAngularDegreesFromRadians, GetAngularDistance, GetAngularFromDotDist, GetAxes, GetBuildChangelistNumber, GetDotDistance, GetEngineVersion, GetEnum, GetFuncName, GetHeadingAngle, GetMappedRangeValue, GetPackageName, GetPerObjectConfigSections, GetRangePctByValue, GetRangeValueByPct, GetRightMost, GetRotatorAxis, GetScriptTrace, GetStateName, GetSystemTime, GetUnAxes, GotoState, InCylinder, InStr, InverseTransformNormal, InverseTransformVector, IsA, IsChildState, IsInState, IsPendingKill, IsUTracing, IsZero, JoinArray, Left, Len, Lerp, LerpColor, Localize, Locs, Loge, LogInternal, MakeColor, MakeLinearColor, MakeRotationMatrix, MakeRotationTranslationMatrix, MakeRotator, MatrixGetAxis, MatrixGetOrigin, MatrixGetRotator, Max, Mid, Min, MirrorVectorByNormal, Normal, Normalize, NormalizeRotAxis, NoZDot, OrthoRotation, ParseLocalizedPropertyPath, ParseStringIntoArray, PathName, PausedState, PointDistToLine, PointDistToPlane, PointDistToSegment, PointProjectToPlane, PoppedState, PopState, ProjectOnTo, PushedState, PushState, QuatDot, QuatFindBetween, QuatFromAxisAndAngle, QuatFromRotator, QuatInvert, QuatProduct, QuatRotateVector, QuatSlerp, QuatToRotator, Rand, RDiff, Repl, Right, RInterpTo, RLerp, RotRand, Round, RSize, RSmerp, RTransform, SaveConfig, SClampRotAxis, ScriptTrace, SetUTracing, Sin, Split, SplitString, Sqrt, Square, StaticSaveConfig, Tan, TimeStamp, ToHex, TransformNormal, TransformVector, TransformVectorByRotation, UnwindHeading, vect2d, VInterpTo, VLerp, VRand, VRandCone, VRandCone2, VSize, VSize2D, VSizeSq, VSizeSq2D, VSmerp, WarnInternal, ^, ^^, |, ||, ~, ~=


Variables Detail

AdditiveBasePose Source code

var const Array<RawAnimSequenceTrack> AdditiveBasePose;
Store Reference Pose animation used to create this additive one. For playback in editor only.

AdditiveBasePoseAnimSeq Source code

var editoronly Array<AnimSequence> AdditiveBasePoseAnimSeq;
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 Source code

var const editoronly Name AdditiveRefName;
Reference animation name

AdditiveRefPose Source code

var const deprecated Array<BoneAtom> AdditiveRefPose;
Reference pose for additive animation. Deprecated.

AdditiveTargetPoseAnimSeq Source code

var editoronly Array<AnimSequence> AdditiveTargetPoseAnimSeq;
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 Source code

var config editoronly array<AnimTag> AnimTags;
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 Source code

var editoronly bool bAdditiveBuiltLooping;
TRUE if additive animation was built with looping interpolation.

bHasBeenUsed Source code

var const transient bool bHasBeenUsed;
Debug flag to trace if this anim sequence was played.

bIsAdditive Source code

var const bool bIsAdditive;
TRUE if this is an Additive Animation

BoneControlModifiers Source code

var deprecated editinline array<SkelControlModifier> BoneControlModifiers;
DEPRECATED VER_ADDED_ANIM_METADATA_FIXED_QUATERROR Bone Control Modifiers, sorted by time (earliest notification first).

CompressCommandletVersion Source code

var editoronly const int CompressCommandletVersion;
Saved version number with CompressAnimations commandlet. To help with doing it in multiple passes.

CompressedByteStream Source code

var native array<byte> CompressedByteStream;
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 Source code

var array<int> 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 Source code

var const array<CurveTrack> CurveData;

EncodingPkgVersion Source code

var const int EncodingPkgVersion;
The version of the global encoding package used at the time of import

KeyEncodingFormat Source code

var const AnimationKeyFormat KeyEncodingFormat;

NumFrames Source code

var int NumFrames;
Number of raw frames in this sequence (not used by engine - just for informational purposes).

RawAnimationData Source code

var native private const array<RawAnimSequenceTrack> RawAnimationData;

RawAnimData Source code

var deprecated private const array<RawAnimSequenceTrack> RawAnimData;
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 Source code

var editoronly Array<AnimSequence> RelatedAdditiveAnimSeqs;
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 Source code

var private transient native pointer RotationCodec;

RotationCompressionFormat Source code

var const AnimationCompressionFormat RotationCompressionFormat;
The compression format that was used to compress rotation tracks.

RotationData Source code

var transient const array<RotationTrack> RotationData;
Rotation data post keyframe reduction. RotationData.Num() is zero if keyframe reduction has not yet been applied.

SequenceLength Source code

var float SequenceLength;
Length (in seconds) of this AnimSequence if played back with a speed of 1.0.

SequenceName Source code

var name SequenceName;
Name of the animation sequence. Used in AnimNodeSequence.

TranslationCodec Source code

var private transient native pointer TranslationCodec;
The runtime interface to decode and byte swap the compressed animation May be NULL. Set at runtime - does not exist in editor

TranslationCompressionFormat Source code

var const AnimationCompressionFormat TranslationCompressionFormat;
The compression format that was used to compress translation tracks.

TranslationData Source code

var transient const array<TranslationTrack> TranslationData;
Translation data post keyframe reduction. TranslationData.Num() is zero if keyframe reduction has not yet been applied.

UseScore Source code

var const transient float UseScore;
Debug score to find out animation usage

AnimSequence

bDoNotOverrideCompression Source code

var(AnimSequence) editoronly const bool bDoNotOverrideCompression;
Do not attempt to override compression scheme when running CompressAnimations commandlet. Some high frequency animations are too sensitive and shouldn't be changed.

bNoLoopingInterpolation Source code

var(AnimSequence) bool bNoLoopingInterpolation;
if TRUE, disable interpolation between last and first frame when looping.

CompressionScheme Source code

var(AnimSequence) editinline editconst editoronly AnimationCompressionAlgorithm CompressionScheme;
The compression scheme that was most recently used to compress this animation. May be NULL.

MetaData Source code

var(AnimSequence) editinline instanced Array<AnimMetaData> MetaData;
Animation Meta Data

Notifies Source code

var(AnimSequence) editinline array<AnimNotifyEvent> Notifies;
Animation notifies, sorted by time (earliest notification first).

RateScale Source code

var(AnimSequence) float RateScale;
Number for tweaking playback rate of this animation globally.


Enumerations Detail

AnimationCompressionFormat Source code

enum AnimationCompressionFormat
{
ACF_None, ACF_Float96NoW, ACF_Fixed48NoW, ACF_IntervalFixed32NoW, ACF_Fixed32NoW, ACF_Float32NoW, ACF_Identity
};
Indicates animation data compression format.

AnimationKeyFormat Source code

enum AnimationKeyFormat
{
AKF_ConstantKeyLerp, AKF_VariableKeyLerp, AKF_PerTrackCompression,
};
Indicates animation data compression format.


Structures Detail

AnimNotifyEvent Source code

struct AnimNotifyEvent
{
var(AnimSequence) editoronly Name Comment;
var(AnimSequence) float Duration;
var(AnimSequence) instanced AnimNotify Notify;
var(AnimSequence) float Time;
};


AnimTag Source code

struct AnimTag
{
var array<string> Contains;
var string Tag;
};
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

CompressedTrack Source code

struct CompressedTrack
{
var array<byte> ByteStream;
var float Mins[3];
var float Ranges[3];
var array<float> Times;
};


CurveTrack Source code

struct CurveTrack
{
var name CurveName;
var array<float> CurveWeights;
};
Key frame curve data for one track CurveName: Morph Target Name CurveWeights: List of weights for each frame

RawAnimSequenceTrack Source code

struct RawAnimSequenceTrack
{
var array<vector> PosKeys;
var array<quat> RotKeys;
};
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
PosKeys:
Position keys.
RotKeys:
Rotation keys.

RotationTrack Source code

struct RotationTrack
{
var array<quat> RotKeys;
var array<float> Times;
};
Keyframe rotation data for one track. Rot(i) occurs at Time(i). Rot.Num() always equals Time.Num().

SkelControlModifier Source code

struct SkelControlModifier
{
var(AnimSequence) editinline array<TimeModifier> Modifiers;
var(AnimSequence) name SkelControlName;
};

Modifiers:
Modifiers for what time and what strength for this skelcontrol nam
SkelControlName:
SkelControl Node Name in the Anim Tree that would apply

TimeModifier Source code

struct TimeModifier
{
var(AnimSequence) float TargetStrength;
var(AnimSequence) float Time;
};

TargetStrength:
This will linearly interpolate between multiple strength within one anim dat
Time:
Time to apply

TranslationTrack Source code

struct TranslationTrack
{
var array<vector> PosKeys;
var array<float> Times;
};
Keyframe position data for one track. Pos(i) occurs at Time(i). Pos.Num() always equals Time.Num().


Functions Detail

GetNotifyTimeByClass Source code

native function float GetNotifyTimeByClass ( class<AnimNotify> NotifyClass, optional float PlayRate = 1.f, optional float StartPosition = -1.f, optional out AnimNotify out_Notify, optional out float out_Duration )
Get the time (in seconds) from the start of the animation that the first notify of the given class would fire
@param NotifyClass Class of AnimNotify we are looking for (ie AnimNotify_Sound)
@param PlayRate Rate that animation would be played at
@param StartPosition Initial position in the animation to start checking from
@return Time in seconds that notify would fire if anim was played at given rate Returns -1.f if no notify is found


Defaultproperties

defaultproperties
{
	RateScale=1.0
}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: ti 22-3-2011 19:56:47.504 - Created with UnCodeX