soundvision/UnityProject/Assets/ThridParty/AzureKinectExamples/KinectScripts/PoseModelHelperClassic.cs
2019-10-26 22:49:14 +02:00

72 lines
2 KiB
C#

using UnityEngine;
namespace com.rfilkov.components
{
/// <summary>
/// Pose model helper matches the sensor-tracked joints to model transforms (with manual assignment).
/// </summary>
[RequireComponent(typeof(Animator))]
public class PoseModelHelperClassic : PoseModelHelper
{
// Public variables that will get matched to bones. If empty, the Kinect will simply not track it.
public Transform Pelvis;
public Transform SpineNaval;
public Transform SpineChest;
public Transform Neck;
//public Transform Head;
public Transform ClavicleLeft;
public Transform ShoulderLeft;
public Transform ElbowLeft;
public Transform WristLeft;
public Transform ClavicleRight;
public Transform ShoulderRight;
public Transform ElbowRight;
public Transform WristRight;
public Transform HipLeft;
public Transform KneeLeft;
public Transform AnkleLeft;
//private Transform FootLeft = null;
public Transform HipRight;
public Transform KneeRight;
public Transform AnkleRight;
//private Transform FootRight = null;
// map the bones to the model.
protected override void MapBones()
{
bones[0] = Pelvis;
bones[1] = SpineNaval;
bones[2] = SpineChest;
bones[3] = Neck;
//bones[4] = Head;
bones[5] = ClavicleLeft;
bones[6] = ShoulderLeft;
bones[7] = ElbowLeft;
bones[8] = WristLeft;
bones[9] = ClavicleRight;
bones[10] = ShoulderRight;
bones[11] = ElbowRight;
bones[12] = WristRight;
bones[13] = HipLeft;
bones[14] = KneeLeft;
bones[15] = AnkleLeft;
//bones[16] = FootLeft;
bones[17] = HipRight;
bones[18] = KneeRight;
bones[19] = AnkleRight;
//bones[20] = FootRight;
}
}
}