0

Kinectで実装された次のコードがあります。

 private void ProcessForwardBackGesture(Joint head, Joint rightHand, Joint leftHand, Joint hip, Joint leftKnee, Joint rightKnee)
    {
        if (rightHand.Position.X > head.Position.X + 0.45)
        {
                OnGestureDetected("SwipeToRight");
                System.Windows.Forms.SendKeys.SendWait("{Right}");
        }
        if (leftHand.Position.X < head.Position.X - 0.45)
        {
               OnGestureDetected("SwipeToLeft");
               System.Windows.Forms.SendKeys.SendWait("{Left}");
        }
        if (rightHand.Position.Y > (hip.Position.Y + 0.20))
        {
            OnGestureDetected("UP");
            System.Windows.Forms.SendKeys.SendWait("{Up}");
        }
        if (rightHand.Position.Y < (hip.Position.Y - 0.20))
        {
            OnGestureDetected("DOWN");
            System.Windows.Forms.SendKeys.SendWait("{Down}");
        }
        if ((leftKnee.Position.Y > hip.Position.Y - 0.30))
        {
            OnGestureDetected("Space");
            System.Windows.Forms.SendKeys.SendWait("{Space}");
        }
        if ((rightKnee.Position.Y > hip.Position.Y - 0.30))
        {
            OnGestureDetected("Alt");
            System.Windows.Forms.SendKeys.SendWait("{Alt}");
        }

    }

OnGestureDetected 関数は、コンソールで何が起こっているかを示します。姿勢を保つと、その姿勢を離れるまで、コンソールにそのキーが表示されます。メモ帳では、長いテキストがある場合、姿勢で定義された方向にスクロールし続けます。しかし、3D ゲームまたは Java ゲーム (クロムを使用) では、インパルスを 1 つだけ与えてから何もしません。そのインパルスを維持するにはどうすればよいですか。kinectでレーシングゲームが遊べるプログラムを作りたいです。

4

0 に答える 0