The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall
UE3:UIAnimation (UDK)
- Package:
- Engine
- Direct subclass:
- UIAnimationSeq
- This class in other games:
- UT3
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. |
Abstract base class for all classes related to UI animation. This class simply defines the data structures used the UI animation system.
Enums[edit]
EUIAnimationInterpMode[edit]
Defines the types of interpolation that can be used for animation. (based on EViewTargetBlendFunction)
Todo: hook up...
- UIANIMMODE_Linear
- simple linear interpolation
- UIANIMMODE_EaseIn
- start of animation takes longer
- UIANIMMODE_EaseOut
- end of animation takes longer
- UIANIMMODE_EaseInOut
- beginning and end of animation take longer
EUIAnimationLoopMode[edit]
Different types of looping behaviors for UI animations.
- UIANIMLOOP_None
- no looping
- UIANIMLOOP_Continuous
- loops sequentially through keyframes, then starts over at beginning
i.e. 0, 1, 2, 3, 0, 1, 2, 3
- UIANIMLOOP_Bounce
- when the final keyframe is reached, reverses the order of the frames
i.e. 0, 1, 2, 3, 2, 1, 0, 1, 2, 3....
EUIAnimNotifyType[edit]
The different type of notification events
- EANT_WidgetFunction
- EANT_SceneFunction
- EANT_KismetEvent
- EANT_Sound
EUIAnimType[edit]
- EAT_None
- no animation
- EAT_Position
- position animation
- EAT_PositionOffset
- Position animation; not implemented by all widget types.
Values for this animation type are treated as a percentage of the current left or top position. The widget's position is never actually changed - rendering simply applies a tranform to render the widget at a different location.
- EAT_RelPosition
- relative position animation; values are specified as a percentage of the widget's size. i.e. 1.0 for the X component means
move the widget such that it's left face is moved to the current location of its right face, while maintaining the same width.
Todo: not yet implemented
- EAT_Rotation
- rotation
- EAT_RelRotation
- animation of rotation, relative to original rotation
Todo: not yet implemented
- EAT_Color
- widget color animation
- EAT_Opacity
- widget opacity animation
- EAT_Visibility
- widget visibility animation
- EAT_Scale
- widget scale animation
- EAT_Left
- left face animation
- EAT_Top
- top face animation
- EAT_Right
- right face animation
- EAT_Bottom
- bottom face animation
- EAT_PPBloom
- post-process bloom amount
- EAT_PPBlurSampleSize
- post-process blur sample size (kernel)
- EAT_PPBlurAmount
- post-process blur amount (0 - 1)
Structs[edit]
UIAnimationKeyFrame[edit]
Modifiers: native
Contains information about a single frame or destination in an animation sequence.
- float RemainingTime
- The amount of time (in seconds) that it should take for the data in this keyframe
- EUIAnimationInterpMode InterpMode
- Specifies which interpolation algorithm should be used for this keyframe.
- float InterpExponent
- For interpolation modes which require it (ease-in, ease-out), affects the degree of the curve.
- UIAnimationRawData Data
- This holds the array of AnimationOps that will be applied to this Widget
Default values:
Property | Value |
---|---|
InterpExponent | 1.5 |
InterpMode | UIANIMMODE_Linear |
UIAnimationNotify[edit]
Modifiers: native
Holds information about a given notify
Fixme: not yet implemented
- EUIAnimNotifyType NotifyType
- name NotifyName
- Holds the name of the function to call or UI sound to play
UIAnimationRawData[edit]
Modifiers: native
We don't have unions in script so we burn a little more space than I would like. Which value will be used depends on the OpType.
- float DestAsFloat
- Object.LinearColor DestAsColor
- Object.Rotator DestAsRotator
- Object.Vector DestAsVector
- UIAnimationNotify DestAsNotify
UIAnimSequence[edit]
Modifiers: native, transient
This structure holds information about a single animation sequence. Each animation sequence contains a single "track", which holds the individual keyframe data for each data-type supported by UI animation. When all keyframes for a single track have completed executing, the track is removed from the widget's copy of the UIAnimSequence.
All members of this struct are initialized at runtime based on a UIAnimationSeq subobject template defined in the game's subclass of Engine.GameUISceneClient.
- UIAnimationSeq SequenceRef
- The Template to use
- array<UIAnimTrack> AnimationTracks
- Array of animation tracks which are currently active
- EUIAnimationLoopMode LoopMode
- controls how this animation sequence loops
- float PlaybackRate
- How fast are we playing this back
UIAnimTrack[edit]
Modifiers: native
This defines a single animation track. Each track will animation only a single type of data.
- EUIAnimType TrackType
- The type of animation date contained in this track
- array<UIAnimationKeyFrame> KeyFrames
- Holds the actual key frame data
- array<UIAnimationKeyFrame> LoopFrames
- Stores a copy of the KeyFrames array for the purposes of looping.