LeapMotionその 2 NativeExtension LeapMotionAS3について

順番が逆になってしまいましたが、次にLeapMotionでなにができてNativeExtensionでどういう仕組みになっているかを現時点3/28のバージョンをもとにメモしておこうと思います。

LeapMotinというデバイスはキネクトの小型版で卓上に置くと、その設置位置から上方およそ1mの立方体の範囲内をセンサーで感知するようにできています。

キネクトと違うところはキネクトは体(うでや足)の動きを識別するのに対して、LeapMotionでは手と指先を認知するようになっています。

LeapMotionのSDKにはas3用のAPIが用意されていないのでNativeExtensionでnativeのAPIをラップするような形になっているかと思われます。

LeapMotionAS3では

・フレームクラス … 一回のキャプチャによるデータがつまったコンテナ(この中にHandインスタンスやFingerインスタンスが格納されている)

・手クラス(Hand Class) … 手の位置、向き、移動方向、移動量、深度、認識されている指の数などが取得できます。

・指(Finger Class)… 個々の指の位置、向き、移動方向、移動量、深度などの情報が取得できます。それぞれの指には個別にIDが振られます。

・ジェスチャー(Gesture Class).. ジェスチャーを識別することができます。これはイベントではありません。ジェスチャーのタイプはスワイプ、手の回転、画面をタッチするような動き、指でキーを押すような動きを識別できます。デフォルトではこの4つですが自分でカスタマイズして新しいジェスチャーを作れそうです。

主に上の3つの情報を取得することができ、これらの情報を解析してアプリケーション側での挙動をコントロールすることになりそうです。

以下動画はLeapMotionAS3に同梱されているサンプルをAway3Dで走らせてみた感じです。トラッキングに関しては申し分なく、遅延など一切発生しませんが、指が重なった時の処理などがまだ甘く、ここらへんこれから改善されれば嬉しいなといった次第です。

  1. コメントはまだありません。

  1. トラックバックはまだありません。