From 2f9e21fe66df5cfb43e24fa024257b6362601ca0 Mon Sep 17 00:00:00 2001 From: jackfiled Date: Tue, 28 Feb 2023 12:55:21 +0800 Subject: [PATCH] =?UTF-8?q?refact:=20=E5=88=A0=E9=99=A4=E4=BA=86=E5=86=97?= =?UTF-8?q?=E4=BD=99=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/ModelBehaviour.cs | 37 ++------------------------ Assets/Models/PosTransformator.cs | 28 ------------------- Assets/Models/PosTransformator.cs.meta | 11 -------- Assets/Models/PoseTransform.cs | 31 +-------------------- 4 files changed, 3 insertions(+), 104 deletions(-) delete mode 100644 Assets/Models/PosTransformator.cs delete mode 100644 Assets/Models/PosTransformator.cs.meta diff --git a/Assets/ModelBehaviour.cs b/Assets/ModelBehaviour.cs index 619a088..3db17e3 100644 --- a/Assets/ModelBehaviour.cs +++ b/Assets/ModelBehaviour.cs @@ -7,16 +7,11 @@ public class ModelBehaviour : MonoBehaviour private Animator _animator; private readonly UdpListener _listener = new UdpListener(); - - private static readonly List _posLandmarks = new List(); - private static readonly List PoseTransforms = new List(); private void Start() { _animator = GetComponent(); // 获取动画控件 - - TransformatorInit(); //匹配初始化 InitPoseTransformList(); _listener.AddHandler(LogLandmarks); @@ -37,8 +32,6 @@ private void Update() _animator.GetBoneTransform(landmark.UnityName).rotation = landmark.CurrentQuaternion; } - - } @@ -51,6 +44,7 @@ private void OnDisable() private static void LogLandmarks(List landmarks) { + Debug.Log("Here"); foreach (var landmark in landmarks) { Debug.Log(landmark.ToString()); @@ -64,34 +58,7 @@ private static void RigPoint(List landmarks) foreach (var landmark in landmarks) { - var temp = PoseTransforms[(int)landmark.Type]; - temp.CalculateCurrentQuaternion(landmark); - PoseTransforms[(int)landmark.Type] = temp; - //PoseTransforms[(int)landmark.Type].CalculateCurrentQuaternion(landmark); - - - // var temp = _posLandmarks.Find(t=>t.mediaPipeName == landmark.Type.ToString()); - // var sum = new Vector3(0,0,0); - //var mediatemp = new Vector3(landmark.X, landmark.Y, landmark.Z); - //temp.mediaPipePos = new Vector3(landmark.X, landmark.Y, landmark.Z); - //temp.mediaPipePos.x = landmark.X; - //temp.mediaPipePos.y = landmark.Y; - //temp.mediaPipePos.z = landmark.Z; - //foreach (var parents in temp.parent) - //{ - // if (parents != null) - // { - // sum += parents.mediaPipePos; - // } - - - //} - - //var currentPos = sum / temp.parent.Count(); - - //temp.currentQ = Quaternion.Euler(temp.mediaPipePos - currentPos); - - //Debug.Log("Here!!"); + } } diff --git a/Assets/Models/PosTransformator.cs b/Assets/Models/PosTransformator.cs deleted file mode 100644 index 2f82a7b..0000000 --- a/Assets/Models/PosTransformator.cs +++ /dev/null @@ -1,28 +0,0 @@ -/* -using System.Collections.Generic; -using UnityEngine; - -namespace Models -{ - public class PosTransformator - { - public string mediaPipeName; - //动捕手机端关节点标识 - - public HumanBodyBones unityName; - //unity内部avatar系统关节点标识 - - public Vector3 mediaPipePos = new Vector3(0,0,0); - //动捕手机端位置数据 - - public List parent = new List(); - //该骨骼节点的父关节点列表(因为传上来的数据没有脖子和骨盆节点) - - public Quaternion prevQ; - //该骨骼节点的初始角度 - - public Quaternion currentQ; - //该骨骼节点的当前角度 - } -} -*/ \ No newline at end of file diff --git a/Assets/Models/PosTransformator.cs.meta b/Assets/Models/PosTransformator.cs.meta deleted file mode 100644 index dd25407..0000000 --- a/Assets/Models/PosTransformator.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dfbef38b30e17e44b831e51debbd5087 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Models/PoseTransform.cs b/Assets/Models/PoseTransform.cs index 8d4570d..b65351e 100644 --- a/Assets/Models/PoseTransform.cs +++ b/Assets/Models/PoseTransform.cs @@ -87,38 +87,9 @@ public static void UpdatePosition(ref PoseTransform pose, PoseLandmark landmark) } } - public static void CalculateRotation(PoseTransform poseTransform) + public static void CalculateRotation(ref PoseTransform poseTransform, PoseLandmark landmark) { - //var temp = _posLandmarks.Find(t=>t.mediaPipeName == landmark.Type.ToString()); - var sum = new Vector3(0,0,0); - - if (landmark.Visibility > 0.6) - { - var temp = new Vector4(landmark.X, landmark.Y, landmark.Z, 1); - - - MediaPipePos = new Vector3(-temp.x, -temp.y, -temp.z); - - } - - if (UnityName != HumanBodyBones.LastBone) - { - Debug.Log(UnityName+".MediaPipePos:"+MediaPipePos); - } - - foreach (var parents in Parent) - { - - sum += parents.MediaPipePos; - //Debug.Log("parents:"+parents.UnityName+".MediaPipePos:"+parents.MediaPipePos); - - } - //Debug.Log("sum:"+sum); - var currentPos = sum / Parent.Count; - - CurrentQuaternion = Quaternion.LookRotation(MediaPipePos - currentPos); - } ///