Open 3D Engine EMotionFX Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
EMotionFX::AnimGraphTagCondition Class Reference

Inherits EMotionFX::AnimGraphTransitionCondition, and EMotionFX::ObjectAffectedByParameterChanges.

Public Types

enum  EFunction : AZ::u8 { FUNCTION_ALL = 0 , FUNCTION_NOTALL = 1 , FUNCTION_ONEORMORE = 2 , FUNCTION_NONE = 3 }
 
- Public Types inherited from EMotionFX::AnimGraphObject
enum  { FLAG_DISABLED = 1 << 0 }
 
enum  ECategory {
  CATEGORY_SOURCES = 0 , CATEGORY_BLENDING = 1 , CATEGORY_CONTROLLERS = 2 , CATEGORY_PHYSICS = 3 ,
  CATEGORY_LOGIC = 4 , CATEGORY_MATH = 5 , CATEGORY_MISC = 6 , CATEGORY_TRANSITIONS = 10 ,
  CATEGORY_TRANSITIONCONDITIONS = 11 , CATEGORY_TRIGGERACTIONS = 12
}
 
enum  ESyncMode : AZ::u8 { SYNCMODE_DISABLED = 0 , SYNCMODE_TRACKBASED = 1 , SYNCMODE_CLIPBASED = 2 }
 
enum  EEventMode : AZ::u8 {
  EVENTMODE_LEADERONLY = 0 , EVENTMODE_FOLLOWERONLY = 1 , EVENTMODE_BOTHNODES = 2 , EVENTMODE_MOSTACTIVE = 3 ,
  EVENTMODE_NONE = 4
}
 
enum  EExtractionMode : AZ::u8 { EXTRACTIONMODE_BLEND = 0 , EXTRACTIONMODE_TARGETONLY = 1 , EXTRACTIONMODE_SOURCEONLY = 2 }
 

Public Member Functions

 AnimGraphTagCondition (AnimGraph *animGraph)
 
void Reinit () override
 
bool InitAfterLoading (AnimGraph *animGraph) override
 
void GetSummary (AZStd::string *outResult) const override
 
void GetTooltip (AZStd::string *outResult) const override
 
const char * GetPaletteName () const override
 
bool TestCondition (AnimGraphInstance *animGraphInstance) const override
 
const char * GetTestFunctionString () const
 
void CreateTagString (AZStd::string &outTagString) const
 
void SetFunction (EFunction function)
 
void SetTags (const AZStd::vector< AZStd::string > &tags)
 
const AZStd::vector< size_t > & GetTagParameterIndices () const
 
AZStd::vector< AZStd::string > GetParameters () const override
 
AnimGraphGetParameterAnimGraph () const override
 
void ParameterMaskChanged (const AZStd::vector< AZStd::string > &newParameterMask) override
 
void AddRequiredParameters (AZStd::vector< AZStd::string > &parameterNames) const override
 
void ParameterAdded (const AZStd::string &newParameterName) override
 
void ParameterRenamed (const AZStd::string &oldParameterName, const AZStd::string &newParameterName) override
 
void ParameterOrderChanged (const ValueParameterVector &beforeChange, const ValueParameterVector &afterChange) override
 
void ParameterRemoved (const AZStd::string &oldParameterName) override
 
void BuildParameterRemovedCommands (MCore::CommandGroup &commandGroup, const AZStd::string &parameterNameToBeRemoved) override
 
- Public Member Functions inherited from EMotionFX::AnimGraphTransitionCondition
bool InitAfterLoading (AnimGraph *animGraph) override
 
void SetTransition (AnimGraphStateTransition *transition)
 
AnimGraphStateTransitionGetTransition () const
 
virtual bool TestCondition (AnimGraphInstance *animGraphInstance) const =0
 
virtual void Reset (AnimGraphInstance *animGraphInstance)
 
ECategory GetPaletteCategory () const override
 
virtual void GetAttributeStringForAffectedNodeIds (const AZStd::unordered_map< AZ::u64, AZ::u64 > &convertedIds, AZStd::string &attributesString) const
 
- Public Member Functions inherited from EMotionFX::AnimGraphObject
 AnimGraphObject (AnimGraph *animGraph)
 
virtual void Reinit ()
 
virtual void RecursiveReinit ()
 
virtual AnimGraphObjectDataCreateUniqueData (AnimGraphInstance *animGraphInstance)
 
void InvalidateUniqueDatas ()
 Calls InvalidateUniqueData() for the given object for all anim graph instances. (Used by reflection context)
 
virtual void InvalidateUniqueData (AnimGraphInstance *animGraphInstance)
 
virtual void RecursiveInvalidateUniqueDatas (AnimGraphInstance *animGraphInstance)
 
void ResetUniqueDatas ()
 
void ResetUniqueData (AnimGraphInstance *animGraphInstance)
 
virtual bool InitAfterLoading (AnimGraph *animGraph)=0
 
virtual void RegisterAttributes ()
 
virtual void Unregister ()
 
virtual const char * GetPaletteName () const =0
 
virtual void GetSummary (AZStd::string *outResult) const
 
virtual void GetTooltip (AZStd::string *outResult) const
 
virtual const char * GetHelpUrl () const
 
virtual ECategory GetPaletteCategory () const =0
 
virtual void Update (AnimGraphInstance *animGraphInstance, float timePassedInSeconds)
 
virtual void OnChangeMotionSet (AnimGraphInstance *animGraphInstance, MotionSet *newMotionSet)
 
virtual void OnRemoveNode (AnimGraph *animGraph, AnimGraphNode *nodeToRemove)
 
virtual void RecursiveOnChangeMotionSet (AnimGraphInstance *animGraphInstance, MotionSet *newMotionSet)
 
virtual void OnActorMotionExtractionNodeChanged ()
 
MCORE_INLINE size_t GetObjectIndex () const
 
MCORE_INLINE void SetObjectIndex (size_t index)
 
MCORE_INLINE AnimGraphGetAnimGraph () const
 
MCORE_INLINE void SetAnimGraph (AnimGraph *animGraph)
 
size_t SaveUniqueData (AnimGraphInstance *animGraphInstance, uint8 *outputBuffer) const
 
size_t LoadUniqueData (AnimGraphInstance *animGraphInstance, const uint8 *dataBuffer)
 
virtual void RecursiveCollectObjects (AZStd::vector< AnimGraphObject * > &outObjects) const
 
bool GetHasErrorFlag (AnimGraphInstance *animGraphInstance) const
 
void SetHasErrorFlag (AnimGraphInstance *animGraphInstance, bool hasError)
 
void SyncVisualObject ()
 
virtual void AddRequiredParameters (AZStd::vector< AZStd::string > &parameterNames) const
 
virtual AZStd::vector< AZStd::string > GetParameters () const
 
virtual AnimGraphGetParameterAnimGraph () const
 
virtual void ParameterMaskChanged (const AZStd::vector< AZStd::string > &newParameterMask)
 
virtual void ParameterAdded (const AZStd::string &newParameterName)
 
virtual void ParameterRenamed (const AZStd::string &oldParameterName, const AZStd::string &newParameterName)
 
virtual void ParameterOrderChanged (const ValueParameterVector &beforeChange, const ValueParameterVector &afterChange)
 
virtual void ParameterRemoved (const AZStd::string &oldParameterName)
 
virtual void BuildParameterRemovedCommands (MCore::CommandGroup &commandGroup, const AZStd::string &parameterNameToBeRemoved)
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from EMotionFX::AnimGraphTransitionCondition
static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from EMotionFX::AnimGraphObject
static const char * GetCategoryName (ECategory category)
 
static void CalculateMotionExtractionDelta (EExtractionMode extractionMode, AnimGraphRefCountedData *sourceRefData, AnimGraphRefCountedData *targetRefData, float weight, bool hasMotionExtractionNodeInMask, Transform &outTransform, Transform &outTransformMirrored)
 
static void CalculateMotionExtractionDeltaAdditive (EExtractionMode extractionMode, AnimGraphRefCountedData *sourceRefData, AnimGraphRefCountedData *targetRefData, const Transform &basePoseTransform, float weight, bool hasMotionExtractionNodeInMask, Transform &outTransform, Transform &outTransformMirrored)
 
static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from EMotionFX::ObjectAffectedByParameterChanges
static void SortAndRemoveDuplicates (AnimGraph *animGraph, AZStd::vector< AZStd::string > &parameterNames)
 

Additional Inherited Members

- Protected Attributes inherited from EMotionFX::AnimGraphTransitionCondition
AnimGraphStateTransitionm_transition = nullptr
 
- Protected Attributes inherited from EMotionFX::AnimGraphObject
AnimGraphm_animGraph
 
size_t m_objectIndex
 

Member Function Documentation

◆ AddRequiredParameters()

void EMotionFX::AnimGraphTagCondition::AddRequiredParameters ( AZStd::vector< AZStd::string > &  parameterNames) const
overridevirtual

◆ BuildParameterRemovedCommands()

void EMotionFX::AnimGraphTagCondition::BuildParameterRemovedCommands ( MCore::CommandGroup commandGroup,
const AZStd::string &  parameterNameToBeRemoved 
)
overridevirtual

◆ GetPaletteName()

const char * EMotionFX::AnimGraphTagCondition::GetPaletteName ( ) const
overridevirtual

◆ GetParameterAnimGraph()

AnimGraph * EMotionFX::AnimGraphTagCondition::GetParameterAnimGraph ( ) const
overridevirtual

◆ GetParameters()

AZStd::vector< AZStd::string > EMotionFX::AnimGraphTagCondition::GetParameters ( ) const
overridevirtual

◆ GetSummary()

void EMotionFX::AnimGraphTagCondition::GetSummary ( AZStd::string *  outResult) const
overridevirtual

Reimplemented from EMotionFX::AnimGraphObject.

◆ GetTooltip()

void EMotionFX::AnimGraphTagCondition::GetTooltip ( AZStd::string *  outResult) const
overridevirtual

Reimplemented from EMotionFX::AnimGraphObject.

◆ InitAfterLoading()

bool EMotionFX::AnimGraphTagCondition::InitAfterLoading ( AnimGraph animGraph)
overridevirtual

◆ ParameterAdded()

void EMotionFX::AnimGraphTagCondition::ParameterAdded ( const AZStd::string &  newParameterName)
overridevirtual

◆ ParameterMaskChanged()

void EMotionFX::AnimGraphTagCondition::ParameterMaskChanged ( const AZStd::vector< AZStd::string > &  newParameterMask)
overridevirtual

◆ ParameterOrderChanged()

void EMotionFX::AnimGraphTagCondition::ParameterOrderChanged ( const ValueParameterVector &  beforeChange,
const ValueParameterVector &  afterChange 
)
overridevirtual

◆ ParameterRemoved()

void EMotionFX::AnimGraphTagCondition::ParameterRemoved ( const AZStd::string &  oldParameterName)
overridevirtual

◆ ParameterRenamed()

void EMotionFX::AnimGraphTagCondition::ParameterRenamed ( const AZStd::string &  oldParameterName,
const AZStd::string &  newParameterName 
)
overridevirtual

◆ Reinit()

void EMotionFX::AnimGraphTagCondition::Reinit ( )
overridevirtual

Reinitialize the object. Some anim graph objects might have additional member variables which are not reflected. These are mostly used for optimizations, e.g. a condition that stores a parameter name which is reflected but the runtime uses a cached parameter index to prevent runtime lookups. These cached values need to be updated on given events like when e.g. a parameter gets removed or changed or the whole anim graph object gets constructed by a copy and paste operation.

Reimplemented from EMotionFX::AnimGraphObject.

◆ TestCondition()

bool EMotionFX::AnimGraphTagCondition::TestCondition ( AnimGraphInstance animGraphInstance) const
overridevirtual

The documentation for this class was generated from the following file: