Unity Arduino Kinect 舵机跟随

功能: 舵机上挂一物体,kinect 识别人走动,计算向量夹角,实现效果为物体始终朝向人物

unity 发送角度给Arduino

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class MyKinectController : MonoBehaviour
{

    KinectManager manager;
    Vector3 person_PosVector3;
    float angle;
    public static MyKinectController Instance;
    void Awake()
    {
        Instance = this;
    }
    void Start()
    {
        if (KinectManager.Instance != null) manager = KinectManager.Instance;
        InitGameData();

    }
 
    void Update()
    {
        if (manager && manager.IsInitialized() && manager.IsUserDetected())
        {
            
            person_PosVector3 = manager.GetJointPosition(manager.GetPrimaryUserID(), 3);
            angle = Vector3.Angle(person_PosVector3, -Vector3.right);
            SerialManager.Instance.WriteData(angle.ToString());
            Debug.Log(angle);
            //Debug.Log(person_PosVector3.y);
        }
        else
        {
            ResetGameData();
        }
    }
    void InitGameData()
    {
    }
    void ResetGameData()
    {
        SerialManager.Instance.WriteData("0");
    }
}

Arduino 代码:

https://blog.csdn.net/qq_39097425/article/details/91873378

猜你喜欢

转载自blog.csdn.net/qq_39097425/article/details/91873691
今日推荐