Я пытался реализовать стандартные жесты, предоставляемые скачкообразным движением, такие как жест по кругу и жест смахивания, но ни один из них, похоже, не работает. Мне трудно понять, почему большинство методов, существующих в API, не распознаются в Unity.
Ниже приведен код, который я использовал, чтобы получить жест круга.
using UnityEngine;
using System.Collections;
using Leap;
public class LeapTest : Leap.Listener {
public Leap.Controller Controller;
// Use this for initialization
public void Start () {
Controller = new Leap.Controller(this);
Debug.Log("Leap start");
}
public override void OnConnect(Controller controller){
Debug.Log("Leap Connected");
controller.EnableGesture(Gesture.GestureType.TYPECIRCLE,true);
}
public override void OnFrame(Controller controller)
{
Frame frame = controller.Frame();
GestureList gestures = frame.Gestures();
for (int i = 0; i < gestures.Count; i++)
{
Gesture gesture = gestures[0];
switch(gesture.Type){
case Gesture.GestureType.TYPECIRCLE:
Debug.Log("Circle");
break;
default:
Debug.Log("Bad gesture type");
break;
}
}
Однако, когда я помещаю этот код в unity3D, он не распознает следующие строки кода из кода выше:
Leap.Controller
.EnableGesture(Gesture.GestureType.TYPECIRCLE, true);
GestureList gestures = frame.Gestures();
Я не понимаю, чего мне здесь не хватает, или это обесценивается? Пожалуйста, кто-нибудь может объяснить? Thankyou