From 3bc883e6f24ca34d559b66996df4d97e78728a64 Mon Sep 17 00:00:00 2001 From: rodolpheh Date: Tue, 5 Dec 2023 22:27:13 +0000 Subject: [PATCH] Simplify some variables in hand --- src/hand.cpp | 20 ++++++++++---------- src/hand.h | 12 ++++++------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/hand.cpp b/src/hand.cpp index c49fe6d..69e6e6f 100644 --- a/src/hand.cpp +++ b/src/hand.cpp @@ -240,14 +240,14 @@ void UltraleapHand::_bind_methods() { void UltraleapHand::fill_hand_data(Ref ul_hand, LEAP_HAND* hand, Transform3D rigging_transform) { // For now we just check if the arm ref is not set - if (ul_hand->arm_ref == NULL) { - ul_hand->arm_ref = Ref(memnew(UltraleapBone)); - ul_hand->palm_ref = Ref(memnew(UltraleapPalm)); - ul_hand->set_thumb(Ref(memnew(UltraleapDigit))); - ul_hand->set_index(Ref(memnew(UltraleapDigit))); - ul_hand->set_middle(Ref(memnew(UltraleapDigit))); - ul_hand->set_ring(Ref(memnew(UltraleapDigit))); - ul_hand->set_pinky(Ref(memnew(UltraleapDigit))); + if (ul_hand->arm == NULL) { + ul_hand->arm.instantiate(); + ul_hand->palm.instantiate(); + ul_hand->thumb.instantiate(); + ul_hand->index.instantiate(); + ul_hand->middle.instantiate(); + ul_hand->ring.instantiate(); + ul_hand->pinky.instantiate(); } ul_hand->type = hand->type == eLeapHandType_Left ? UltraleapTypes::Chirality::Left : UltraleapTypes::Chirality::Right; @@ -258,7 +258,7 @@ void UltraleapHand::fill_hand_data(Ref ul_hand, LEAP_HAND* hand, ul_hand->grab_angle = hand->grab_angle; ul_hand->grab_strength = hand->grab_strength; - UltraleapPalm::fill_palm_data(ul_hand->palm_ref, &hand->palm); + UltraleapPalm::fill_palm_data(ul_hand->palm, &hand->palm); ul_hand->wrist = Transform3D( Basis(UltraleapTypes::ultraleap_quaternion_to_godot_quaternion(&hand->palm.orientation)), @@ -271,5 +271,5 @@ void UltraleapHand::fill_hand_data(Ref ul_hand, LEAP_HAND* hand, UltraleapDigit::fill_digit_data(ul_hand->get_ring(), &hand->ring, UltraleapDigit::FingerType::Ring, ul_hand->wrist, rigging_transform); UltraleapDigit::fill_digit_data(ul_hand->get_pinky(), &hand->pinky, UltraleapDigit::FingerType::Pinky, ul_hand->wrist, rigging_transform); - UltraleapBone::fill_bone_data(ul_hand->arm_ref, ul_hand->wrist, &hand->arm, UltraleapBone::BoneType::Arm, rigging_transform); + UltraleapBone::fill_bone_data(ul_hand->arm, ul_hand->wrist, &hand->arm, UltraleapBone::BoneType::Arm, rigging_transform); } \ No newline at end of file diff --git a/src/hand.h b/src/hand.h index 1d5e466..5f87ddf 100644 --- a/src/hand.h +++ b/src/hand.h @@ -69,11 +69,11 @@ public: Ref get_pinky() { return pinky; } void set_pinky(Ref value) { pinky = value; } - Ref get_arm() { return arm_ref; } - void set_arm(Ref value) { arm_ref = value; } + Ref get_arm() { return arm; } + void set_arm(Ref value) { arm = value; } - Ref get_palm() { return palm_ref; } - void set_palm(Ref value) { palm_ref = value; } + Ref get_palm() { return palm; } + void set_palm(Ref value) { palm = value; } Array get_digits() { if (digits_array == Variant::NIL) { @@ -97,8 +97,8 @@ protected: static void _bind_methods(); private: - Ref arm_ref; - Ref palm_ref; + Ref arm; + Ref palm; Array digits_array; Ref thumb;