UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Anim::TAttributeBlendOperator< AttributeType > Class Template Reference

#include <AttributeBlendOperator.h>

+ Inheritance diagram for UE::Anim::TAttributeBlendOperator< AttributeType >:

Public Member Functions

virtual void Accumulate (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const final
 
virtual void Interpolate (const void *FromData, const void *ToData, float Alpha, void *InOutData) const final
 
virtual void Override (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const final
 
virtual void Blend (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const final
 
virtual void BlendPerBone (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const final
 
virtual void ConvertToAdditive (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAdditiveAttributes) const final
 
- Public Member Functions inherited from UE::Anim::IAttributeBlendOperator
virtual ~IAttributeBlendOperator ()
 

Protected Member Functions

template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type Blend_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type Blend_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type BlendPerBone_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type BlendPerBone_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type Override_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type Override_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type Accumulate_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type Accumulate_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAttributes) const
 
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type ConvertToAdditive_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAdditiveAttributes) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type ConvertToAdditive_Internal (const FAttributeBlendData &BlendData, FStackAttributeContainer *OutAdditiveAttributes) const
 
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable &&!TAttributeTypeTraits< AttributeType >::StepInterpolate, void >::Type Interpolate_Internal (const void *FromData, const void *ToData, float Alpha, void *InOutData) const
 
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable||TAttributeTypeTraits< AttributeType >::StepInterpolate, void >::Type Interpolate_Internal (const void *FromData, const void *ToData, float Alpha, void *InOutData) const
 

Detailed Description

template<typename AttributeType>
class UE::Anim::TAttributeBlendOperator< AttributeType >

Default blend operator used for any registered attribute type, when no user-defined operator has been specified Using TEnableIf to select appropriate behaviour according to TAttributeTypeTraits<Type>::IsBlendable value for AttributeType template

Member Function Documentation

◆ Accumulate()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::Accumulate ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlinefinalvirtual

◆ Accumulate_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Accumulate_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

◆ Accumulate_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Accumulate_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

◆ Blend()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::Blend ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlinefinalvirtual

Invoked when two or multiple sets of attribute container inputs are to be blended together

Implements UE::Anim::IAttributeBlendOperator.

◆ Blend_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Blend_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

End IAttributeBlendOperator overrides Blend operation for blendable attribute types

◆ Blend_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Blend_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

Blend operation for non-blendable attribute types

◆ BlendPerBone()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::BlendPerBone ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlinefinalvirtual

Invoked when two or multiple sets of attribute container inputs are to be blended together, using individual bone weights

Implements UE::Anim::IAttributeBlendOperator.

◆ BlendPerBone_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::BlendPerBone_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

◆ BlendPerBone_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::BlendPerBone_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

◆ ConvertToAdditive()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::ConvertToAdditive ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAdditiveAttributes 
) const
inlinefinalvirtual

Invoked when an attribute container is supposed to be made additive with regards to container B

Implements UE::Anim::IAttributeBlendOperator.

◆ ConvertToAdditive_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::ConvertToAdditive_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAdditiveAttributes 
) const
inlineprotected

◆ ConvertToAdditive_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::ConvertToAdditive_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAdditiveAttributes 
) const
inlineprotected

◆ Interpolate()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::Interpolate ( const void FromData,
const void ToData,
float  Alpha,
void InOutData 
) const
inlinefinalvirtual

Invoked to interpolate between two individual attribute type values, according to the provided alpha

Implements UE::Anim::IAttributeBlendOperator.

◆ Interpolate_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable &&!TAttributeTypeTraits< AttributeType >::StepInterpolate, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Interpolate_Internal ( const void FromData,
const void ToData,
float  Alpha,
void InOutData 
) const
inlineprotected

◆ Interpolate_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable||TAttributeTypeTraits< AttributeType >::StepInterpolate, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Interpolate_Internal ( const void FromData,
const void ToData,
float  Alpha,
void InOutData 
) const
inlineprotected

◆ Override()

template<typename AttributeType >
virtual void UE::Anim::TAttributeBlendOperator< AttributeType >::Override ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlinefinalvirtual

Invoked when an attribute container A is expected to override attributes in container B

Implements UE::Anim::IAttributeBlendOperator.

◆ Override_Internal() [1/2]

template<typename AttributeType >
template<typename Type >
TEnableIf< TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Override_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

◆ Override_Internal() [2/2]

template<typename AttributeType >
template<typename Type >
TEnableIf<!TAttributeTypeTraits< Type >::IsBlendable, void >::Type UE::Anim::TAttributeBlendOperator< AttributeType >::Override_Internal ( const FAttributeBlendData BlendData,
FStackAttributeContainer OutAttributes 
) const
inlineprotected

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