如何检测跳跃运动中的手是否面向上(C#)单位

如何检测跳跃运动中的手是否面向上(C#)单位,c#,unity3d,unity5,leap-motion,C#,Unity3d,Unity5,Leap Motion,我正在做一个游戏,当我面朝上时,保存和加载系统将显示出来。问题是,我不知道如何检测我的手掌是否朝上。我只知道如何得到手掌的距离和位置 我试过这个: using Leap; using Leap.Unity; public class GetPamlPositionLeap : MonoBehaviour { LeapProvider provider; // Use this for initialization void Start () { provider = FindObjec

我正在做一个游戏,当我面朝上时,保存和加载系统将显示出来。问题是,我不知道如何检测我的手掌是否朝上。我只知道如何得到手掌的距离和位置

我试过这个:

using Leap;
using Leap.Unity;

public class GetPamlPositionLeap : MonoBehaviour {
LeapProvider provider;
// Use this for initialization
void Start () {
    provider = FindObjectOfType<LeapProvider>() as LeapProvider;
}

// Update is called once per frame
void Update () {
    Frame frame = provider.CurrentFrame;
    Hand hand = frame.Hand [0]; // cannot apply indexing
    Vector position = hand.PalmPosition;
    Vector direction = hand.Direction;

    Debug.Log ("The position of hand is" + position + "The direction of hand is" + direction);
}
}
使用Leap;
运用跳跃、统一;
公共类GetPamlPositionLeap:单行为{
服务提供者;
//用于初始化
无效开始(){
provider=FindObjectOfType()作为提供程序;
}
//每帧调用一次更新
无效更新(){
Frame Frame=provider.CurrentFrame;
Hand-Hand=frame.Hand[0];//无法应用索引
向量位置=手掌位置;
矢量方向=手的方向;
调试日志(“手的位置为“+位置+”,手的方向为“+方向);
}
}
但它返回错误:

无法对表达式类型应用索引

试一试*

要确定手掌是否朝上,请将Hand.PalmNormal与指向上的向量进行比较——不管您如何定义“向上”

由于您将较新的Orion资源用于Leap Motion,因此也可以使用PalmDirectionDetector脚本


*选择使用名为Hand()的函数和名为Hands的数组是一个糟糕的设计选择。

请参见此处的palmWatcher函数:
Hand hand = frame.Hands[0];