15#include "BoneSocketReference.generated.h"
17class USkeletalMeshComponent;
45 : SocketName(InSocketName)
59 return (CachedSocketMeshBoneIndex.IsValid());
64 return (CachedSocketCompactBoneIndex.IsValid());
69 return CachedSocketCompactBoneIndex;
72 template<
typename poseType>
76 if (CachedSocketCompactBoneIndex.IsValid())
124 SocketReference.InitialzeCompactBoneIndex(RequiredBones);
125 BoneReference.InvalidateCachedBoneIndex();
129 BoneReference.Initialize(RequiredBones);
130 SocketReference.InvalidateCachedBoneIndex();
149 return SocketReference.HasValidSetup();
159 return (SocketReference.SocketName !=
NAME_None);
162 return (BoneReference.BoneName !=
NAME_None);
169 return (SocketReference.SocketName);
172 return (BoneReference.BoneName);
180 return SocketReference.IsValidToEvaluate();
183 return BoneReference.IsValidToEvaluate(RequiredBones);
192 return SocketReference.GetCachedSocketCompactBoneIndex();
195 return BoneReference.CachedCompactPoseIndex;
199 template<
typename poseType>
214 if (SocketReference.IsValidToEvaluate())
229 else if (BoneReference.HasValidSetup())
231 if (BoneReference.IsValidToEvaluate() &&
232 ensureMsgf(
InPose.GetPose().IsValidIndex(BoneReference.CachedCompactPoseIndex),
TEXT(
"Invalid Cached Pose : Name %s(Bone Index (%d), Cached (%d))"), *BoneReference.BoneName.ToString(), BoneReference.BoneIndex, BoneReference.CachedCompactPoseIndex.GetInt()))
253 template<
typename poseType>
266 if (SocketReference.IsValidToEvaluate())
276 else if (BoneReference.HasValidSetup())
278 if (BoneReference.IsValidToEvaluate() &&
279 ensureMsgf(
InPose.GetPose().IsValidIndex(BoneReference.CachedCompactPoseIndex),
TEXT(
"Invalid Cached Pose : Name %s(Bone Index (%d), Cached (%d))"), *BoneReference.BoneName.ToString(), BoneReference.BoneIndex, BoneReference.CachedCompactPoseIndex.GetInt()))
#define ensureMsgf( InExpression, InFormat,...)
Definition AssertionMacros.h:465
@ INDEX_NONE
Definition CoreMiscDefines.h:150
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
Definition NameTypes.h:617
@ false
Definition radaudio_common.h:23
Definition AnimInstanceProxy.h:144
Definition BoneContainer.h:192
Definition BoneReference.h:14
FName BoneName
Definition BoneReference.h:19
Definition BoneSocketReference.h:94
FTransform GetTargetTransform(const FTransform &TargetOffset, FCSPose< poseType > &InPose, const FTransform &InComponentToWorld) const
Definition BoneSocketReference.h:254
FCompactPoseBoneIndex GetCompactPoseBoneIndex() const
Definition BoneSocketReference.h:188
FName GetTargetSetup() const
Definition BoneSocketReference.h:165
bool IsValidToEvaluate(const FBoneContainer &RequiredBones) const
Definition BoneSocketReference.h:176
void InitializeBoneReferences(const FBoneContainer &RequiredBones)
Definition BoneSocketReference.h:120
bool HasValidSetup() const
Definition BoneSocketReference.h:145
bool HasTargetSetup() const
Definition BoneSocketReference.h:155
FTransform GetTargetTransform(const FVector &TargetOffset, FCSPose< poseType > &InPose, const FTransform &InComponentToWorld) const
Definition BoneSocketReference.h:200
void Initialize(const FAnimInstanceProxy *InAnimInstanceProxy)
Definition BoneSocketReference.h:135
Definition BonePose.h:408
Definition BoneIndices.h:63
Definition BoneIndices.h:71
Definition BoneSocketReference.h:22
void InvalidateCachedBoneIndex()
Definition BoneSocketReference.h:85
FTransform GetAnimatedSocketTransform(struct FCSPose< poseType > &InPose) const
Definition BoneSocketReference.h:73
FSocketReference(const FName &InSocketName)
Definition BoneSocketReference.h:44
FCompactPoseBoneIndex GetCachedSocketCompactBoneIndex() const
Definition BoneSocketReference.h:67
FName SocketName
Definition BoneSocketReference.h:31
bool IsValidToEvaluate() const
Definition BoneSocketReference.h:62
bool HasValidSetup() const
Definition BoneSocketReference.h:57