UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::AnimationCore::TBoneWeights< ContainerAdapter > Class Template Reference

#include <BoneWeights.h>

Public Types

using ContainerType = typename ContainerAdapter::ContainerType
 

Public Member Functions

 TBoneWeights (ContainerType &InContainer)
 
template<typename OtherContainerAdapter , typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type SetBoneWeights (const TBoneWeights< OtherContainerAdapter > &InBoneWeights, const FBoneWeightsSettings &InSettings={})
 TBoneWeights implementation.
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type SetBoneWeights (TArrayView< const FBoneWeight > BoneWeights, const FBoneWeightsSettings &InSettings={})
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type SetBoneWeights (const FBoneIndexType *InBones, const float *InInfluences, int32 NumEntries, const FBoneWeightsSettings &InSettings={})
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type SetBoneWeights (const FBoneIndexType InBones[MaxInlineBoneWeightCount], const uint16 InInfluences[MaxInlineBoneWeightCount], const FBoneWeightsSettings &InSettings={})
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, bool >::type AddBoneWeight (FBoneWeight InBoneWeight, const FBoneWeightsSettings &InSettings={})
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, bool >::type RemoveBoneWeight (FBoneIndexType InBoneIndex, const FBoneWeightsSettings &InSettings={})
 
template<typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type Renormalize (const FBoneWeightsSettings &InSettings={})
 
template<typename ContainerTypeA , typename ContainerTypeB , typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type Blend (const TBoneWeights< ContainerTypeA > &InBoneWeightsA, const TBoneWeights< ContainerTypeB > &InBoneWeightsB, float InBias, const FBoneWeightsSettings &InSettings={})
 
int32 Num () const
 
FBoneWeight Get (int32 Index) const
 
FBoneWeight operator[] (int32 Index) const
 
int32 FindWeightIndexByBone (FBoneIndexType InBoneIndex) const
 
int32 GetTypeHash () const
 
FString ToString () const
 
template<typename ContainerAdapterA , typename ContainerAdapterB , typename CT >
std::enable_if<!std::is_const< CT >::value, void >::type Blend (const TBoneWeights< ContainerAdapterA > &InBoneWeightsA, const TBoneWeights< ContainerAdapterB > &InBoneWeightsB, const float InBias, const FBoneWeightsSettings &InSettings)
 

Detailed Description

template<typename ContainerAdapter>
class UE::AnimationCore::TBoneWeights< ContainerAdapter >

A templated collection of bone weights algorithms. Requires an adapter to work with a dynamically resizable container.

Member Typedef Documentation

◆ ContainerType

using UE::AnimationCore::TBoneWeights< ContainerAdapter >::ContainerType = typename ContainerAdapter::ContainerType

Constructor & Destructor Documentation

◆ TBoneWeights()

UE::AnimationCore::TBoneWeights< ContainerAdapter >::TBoneWeights ( ContainerType InContainer)
inline

Member Function Documentation

◆ AddBoneWeight()

template<typename CT >
std::enable_if<!std::is_const< CT >::value, bool >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::AddBoneWeight ( FBoneWeight  InBoneWeight,
const FBoneWeightsSettings InSettings = {} 
)
inline

◆ Blend() [1/2]

std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::Blend ( const TBoneWeights< ContainerAdapterA > &  InBoneWeightsA,
const TBoneWeights< ContainerAdapterB > &  InBoneWeightsB,
const float  InBias,
const FBoneWeightsSettings InSettings 
)

◆ Blend() [2/2]

template<typename ContainerTypeA , typename ContainerTypeB , typename CT = ContainerType>
std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::Blend ( const TBoneWeights< ContainerTypeA > &  InBoneWeightsA,
const TBoneWeights< ContainerTypeB > &  InBoneWeightsB,
float  InBias,
const FBoneWeightsSettings InSettings = {} 
)
inline

Blend two bone weights together, making sure to add in every influence from both, using the given settings. The bias value should lie on the [0,1] interval. Values outside that range may give unwanted results. NOTE: The current container can also be used as an input.

◆ FindWeightIndexByBone()

int32 UE::AnimationCore::TBoneWeights< ContainerAdapter >::FindWeightIndexByBone ( FBoneIndexType  InBoneIndex) const
inline

◆ Get()

◆ GetTypeHash()

◆ Num()

◆ operator[]()

◆ RemoveBoneWeight()

template<typename CT >
std::enable_if<!std::is_const< CT >::value, bool >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::RemoveBoneWeight ( FBoneIndexType  InBoneIndex,
const FBoneWeightsSettings InSettings = {} 
)
inline

◆ Renormalize()

template<typename CT >
std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::Renormalize ( const FBoneWeightsSettings InSettings = {})
inline

◆ SetBoneWeights() [1/4]

template<typename CT >
std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::SetBoneWeights ( const FBoneIndexType InBones,
const float InInfluences,
int32  NumEntries,
const FBoneWeightsSettings InSettings = {} 
)
inline

◆ SetBoneWeights() [2/4]

template<typename CT >
std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::SetBoneWeights ( const FBoneIndexType  InBones[MaxInlineBoneWeightCount],
const uint16  InInfluences[MaxInlineBoneWeightCount],
const FBoneWeightsSettings InSettings = {} 
)
inline

◆ SetBoneWeights() [3/4]

std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::SetBoneWeights ( const TBoneWeights< OtherContainerAdapter > &  InBoneWeights,
const FBoneWeightsSettings InSettings = {} 
)
inline

TBoneWeights implementation.

◆ SetBoneWeights() [4/4]

template<typename CT >
std::enable_if<!std::is_const< CT >::value, void >::type UE::AnimationCore::TBoneWeights< ContainerAdapter >::SetBoneWeights ( TArrayView< const FBoneWeight BoneWeights,
const FBoneWeightsSettings InSettings = {} 
)
inline

◆ ToString()

FString UE::AnimationCore::TBoneWeights< ContainerAdapter >::ToString ( ) const
inline

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