From bb8263571a9af1a73ead9c705c0fa974d9c4878b Mon Sep 17 00:00:00 2001
From: pnossol <patrick.nossol@gmail.com>
Date: Wed, 19 Oct 2022 11:17:23 +0200
Subject: [PATCH] Added two properties for hand behaviour

---
 Content/MoCapMap.umap                       | 4 ++--
 Content/SaveSequenceAnimBP.uasset           | 4 ++--
 Content/SaveSequenceRig.uasset              | 4 ++--
 Source/MoCapPlugin/Private/MCController.cpp | 2 ++
 Source/MoCapPlugin/Public/MCAnimInstance.h  | 6 ++++++
 Source/MoCapPlugin/Public/MCController.h    | 6 ++++++
 6 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/Content/MoCapMap.umap b/Content/MoCapMap.umap
index 0ba0792..bf7f330 100644
--- a/Content/MoCapMap.umap
+++ b/Content/MoCapMap.umap
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:0c680860cf807bd176a7dc19790bb4494101f8716f9da7f7ed80130a29b409a6
-size 87739
+oid sha256:29c1462b3554bd2fdd0d05bce798be8315c48c75c1e345c85752c6e46e2d9dd2
+size 87731
diff --git a/Content/SaveSequenceAnimBP.uasset b/Content/SaveSequenceAnimBP.uasset
index 6183198..e56f5f3 100644
--- a/Content/SaveSequenceAnimBP.uasset
+++ b/Content/SaveSequenceAnimBP.uasset
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:2e9b9d5004c4aba2a80268adc506064048a197bf49d93d5a793f4c03797d0e68
-size 213709
+oid sha256:c718dc166debab66b55146bf0155fd0c4ccf20613ea71515ccc551651234fbef
+size 220606
diff --git a/Content/SaveSequenceRig.uasset b/Content/SaveSequenceRig.uasset
index f6c4fd2..a3a0167 100644
--- a/Content/SaveSequenceRig.uasset
+++ b/Content/SaveSequenceRig.uasset
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:a6af6dbc0b03a74a19035c95d8de6dc8fe6d5ab175a8ca6c942ca75b88af1571
-size 5000395
+oid sha256:5ef0c84756a25eda2b87aa68152b2a8c22126efa51b953127567135cce6dc0ad
+size 4842811
diff --git a/Source/MoCapPlugin/Private/MCController.cpp b/Source/MoCapPlugin/Private/MCController.cpp
index 470562b..9d84387 100644
--- a/Source/MoCapPlugin/Private/MCController.cpp
+++ b/Source/MoCapPlugin/Private/MCController.cpp
@@ -1201,6 +1201,8 @@ void AMCController::SaveAnimation() {
 	AnimSaveState.Pawn = Pawn;
 	AnimSaveState.Pawn->GetAnimInstance()->DoFingers = bFingerTrackingEnabled;
 	AnimSaveState.Pawn->GetAnimInstance()->LockFeet = LockFeet;
+	AnimSaveState.Pawn->GetAnimInstance()->UseHandPos = UseHandPosition;
+	AnimSaveState.Pawn->GetAnimInstance()->LimitHandRot = LimitHandRotation;
 	AnimSaveState.Pawn->GetAnimInstance()->SnapshotAnimations.Empty();
 
 	AnimSaveState.FPS = FramesPerSecond;
diff --git a/Source/MoCapPlugin/Public/MCAnimInstance.h b/Source/MoCapPlugin/Public/MCAnimInstance.h
index 7531b1e..9fa43e9 100644
--- a/Source/MoCapPlugin/Public/MCAnimInstance.h
+++ b/Source/MoCapPlugin/Public/MCAnimInstance.h
@@ -53,6 +53,12 @@ public:
 	UPROPERTY(BlueprintReadWrite)
 	bool LockFeet;
 
+	UPROPERTY(BlueprintReadWrite)
+	bool LimitHandRot;
+
+	UPROPERTY(BlueprintReadWrite)
+	bool UseHandPos;
+
 	virtual void NativeInitializeAnimation() override;
 
 	virtual void NativeUpdateAnimation(float DeltaSeconds) override;
diff --git a/Source/MoCapPlugin/Public/MCController.h b/Source/MoCapPlugin/Public/MCController.h
index 4fd06c8..0e245aa 100644
--- a/Source/MoCapPlugin/Public/MCController.h
+++ b/Source/MoCapPlugin/Public/MCController.h
@@ -173,6 +173,12 @@ public:
 	UPROPERTY(EditAnywhere, meta = (DisplayName = "Lock Feet To Green Foot Indicators", Category = "MotionCapture"))
 	bool LockFeet = true;
 
+	UPROPERTY(EditAnywhere, meta = (DisplayName = "Use the captured hand position", Category = "MotionCapture"))
+	bool UseHandPosition = true;
+
+	UPROPERTY(EditAnywhere, meta = (DisplayName = "Limit the hand rotation (can cause rotational jumping)", Category = "MotionCapture"))
+	bool LimitHandRotation = false;
+
 	UPROPERTY(EditAnywhere, meta = (DisplayName = "Additional Post Processing Offsets", Category = "MotionCapture"))
 	FAdditionalOffsets AdditionalOffsets;
 
-- 
GitLab