0

Xbox-Unity を使用して Kinect ゲームを作成しようとしています。プレーヤーの足が空中にあるときと地面に戻ったときを知る必要があります。これはジョイント位置を追跡するのと同じくらい簡単だと思っていましたが、Kinect カメラへの近さに基づいて足の Y が変化します (Kinect から足のジョイント位置を取得)。左足を上げてカメラから遠くに離すと、Y が高くなります (10 としましょう)。カメラの近くに着陸する場合、Y は低くなります (-20 としましょう)。私が望んでいたのは、0 が床であると言うだけで、足が空中にあるときと地面にあるときを簡単に知ることができることでした. 足が地面に着いていることを正しく判断する方法について誰かアイデアはありますか?

編集:点から平面への方程式を使用しましたが、何をしても、床までの距離はカメラへの近さに基づいて常に異なります.

4

1 に答える 1

0

1つの可能性は、それをもう一方の足と比較することです..一方が他方よりも高い場合、彼らはもう一方の足で立っている可能性があります. ジャンプを検出しようとしている場合は、両足の y 位置の急激な変化を見つけることができるはずです。

フロア クリッピング プレーンもありますが、これには、私が見たより複雑な計算が必要です。非常に古いですが、 Kinect プログラミング ガイドをチェックしてください。「フロア決定」セクションは、あなたが求めているものです。

于 2012-06-26T18:18:30.127 に答える