make the virtual hand anim instance proxy safer

This commit is contained in:
Mamadou Babaei
2024-08-16 18:00:56 +02:00
parent 6a1c78d752
commit 33404072c8
2 changed files with 19 additions and 5 deletions
@@ -50,20 +50,29 @@
#include "SGLog/SGLog.h" #include "SGLog/SGLog.h"
FSGVirtualHandAnimInstanceProxy::FSGVirtualHandAnimInstanceProxy() FSGVirtualHandAnimInstanceProxy::FSGVirtualHandAnimInstanceProxy()
: FAnimInstanceProxy() : FAnimInstanceProxy{}
{ {
bIsVirtualHandVisible = false;
VirtualHand = nullptr; VirtualHand = nullptr;
HandMeshAsset = nullptr; HandMeshAsset = nullptr;
HandSkeleton = nullptr; HandSkeleton = nullptr;
bIsVirtualHandVisible = false;
bMarkRenderStateDirty = false; bMarkRenderStateDirty = false;
bShouldAnimationApplyBoneLocation = false; bShouldAnimationApplyBoneLocation = false;
} }
FSGVirtualHandAnimInstanceProxy::FSGVirtualHandAnimInstanceProxy(UAnimInstance* Instance) FSGVirtualHandAnimInstanceProxy::FSGVirtualHandAnimInstanceProxy(UAnimInstance* Instance)
: FAnimInstanceProxy(Instance) : FAnimInstanceProxy{Instance}
{ {
VirtualHand = nullptr;
HandMeshAsset = nullptr;
HandSkeleton = nullptr;
bIsVirtualHandVisible = false;
bMarkRenderStateDirty = false;
bShouldAnimationApplyBoneLocation = false;
} }
void FSGVirtualHandAnimInstanceProxy::PreEvaluateAnimation(UAnimInstance* InAnimInstance) void FSGVirtualHandAnimInstanceProxy::PreEvaluateAnimation(UAnimInstance* InAnimInstance)
@@ -200,7 +209,6 @@ bool FSGVirtualHandAnimInstanceProxy::Evaluate(FPoseContext& Output)
} }
} }
return true; return true;
} }
@@ -55,10 +55,16 @@ struct SENSEGLOVE_API FSGVirtualHandAnimInstanceProxy : public FAnimInstanceProx
GENERATED_USTRUCT_BODY() GENERATED_USTRUCT_BODY()
private: private:
bool bIsVirtualHandVisible; UPROPERTY(Transient)
USGVirtualHandComponent* VirtualHand; USGVirtualHandComponent* VirtualHand;
UPROPERTY(Transient)
USkeletalMesh* HandMeshAsset; USkeletalMesh* HandMeshAsset;
UPROPERTY(Transient)
USkeleton* HandSkeleton; USkeleton* HandSkeleton;
bool bIsVirtualHandVisible;
bool bMarkRenderStateDirty; bool bMarkRenderStateDirty;
FXRMotionControllerData MotionControllerData; FXRMotionControllerData MotionControllerData;