Navigation
Unreal Engine C++ API Reference > Runtime > Engine > Animation
Inheritance Hierarchy
- FAnimLinkableElement
- FAnimNotifyEvent
- FBranchingPoint
- FCompositeSection
References
Module | Engine |
Header | /Engine/Source/Runtime/Engine/Classes/Animation/AnimLinkableElement.h |
Include | #include "Animation/AnimLinkableElement.h" |
Syntax
struct FAnimLinkableElement
Remarks
Used to describe an element that can be linked to a segment in a montage or sequence. Usage: Inherit from FAnimLinkableElement and make sure to call LinkMontage or LinkSequence both on creation and on loading the element. From there SetTime and GetTime should be used to control where this element is in the montage or sequence.
For more advanced usage, see this implementation used in FAnimNotifyEvent where we have a secondary link to handle a duration
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
TEnumAsByte< EAnimLinkMethod::Type > | CachedLinkMethod | Cached link method used to transform the time when LinkMethod changes, always relates to the currently stored time |
![]() |
TObjectPtr< UAnimMontage > | LinkedMontage | The montage that this element is currently linked to |
![]() |
TObjectPtr< UAnimSequenceBase > | LinkedSequence | The Animation Sequence that this montage element will link to, when the sequence changes in either length or rate; the element will correctly place itself in relation to the sequence |
![]() |
TEnumAsByte< EAnimLinkMethod::Type > | LinkMethod | The method we are using to calculate our times |
![]() |
float | LinkValue | The time of this montage. |
![]() |
float | SegmentBeginTime | The absolute time in the montage that our currently linked segment begins |
![]() |
int32 | SegmentIndex | The index of the segment we are linked to within the slot we are using |
![]() |
float | SegmentLength | The absolute length of our currently linked segment |
![]() |
int32 | SlotIndex | The slot index we are currently using within LinkedMontage |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | ChangeLinkMethod
(
EAnimLinkMethod::Type NewLinkMethod |
Changes the way this element is linked to its segment |
![]() |
void | ChangeSlotIndex
(
int32 NewSlotIndex |
Change the montage slot that this element is linked to |
![]() |
void | Clear () |
Clear the linking information from this element, leaves montage link intact |
![]() |
bool | Relinks this element if internal state requires relinking | |
![]() ![]() |
const UAnimMontage * | Gets the Montage this element is linked to, if any | |
![]() ![]() |
const UAnimSequenceBase * | Gets the sequence this element is linked to | |
![]() ![]() |
EAnimLinkMethod::Type | Get the method used to link this element to its segment | |
![]() |
FAnimSegment * | Gets the segment in the current montage in the current slot that is at the time of this element | |
![]() ![]() |
int32 | Get the index of the segment this element is currently linked to | |
![]() ![]() |
int32 | GetSlotIndex () |
Get the slot index this element is currently linked to |
![]() ![]() |
float | GetTime
(
EAnimLinkMethod::Type ReferenceFrame |
Gets the current time for this element |
![]() |
void | Link
(
UAnimSequenceBase* AnimSequenceBase, |
Link this element to an animation object (Sequence or Montage) |
![]() |
void | OnChanged
(
float NewMontageTime |
Called when the properties of this element are changed |
![]() |
void | Refreshes the current segment data (Begin time, length etc.) and validate the link time Intended to update the internal state when segment lengths/times could have changed | |
![]() |
void | SetSegmentIndex
(
int32 NewSegmentIndex |
Directly sets segment index |
![]() ![]() |
void | SetTime
(
float NewTime, |
Sets the time of this element |
![]() |
void | Update () |
Update the timing information for this element. |
Deprecated Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | LinkMontage
(
UAnimMontage* Montage, |
LinkMontage has been deprecated, use Link instead |
![]() |
void | LinkSequence
(
UAnimSequenceBase* Sequence, |
LinkSequence has been deprecated, use Link instead |