i/o blog

ゲーム系の情報の入出力してみるブログ

LeapMotionで遊ぼう2

ビームを出す前にまず、弾を発射させます

発射させる方法はこちらを参考にしていきます

toorsoo.hatenablog.com

 

どうせならLeapMotionらしくジェスチャーで発射させてみようかなと思います

ジェスチャーをするためには以下の手順を踏む必要があります

 ①ジェスチャーを有効にする ( enbleGesture 関数 )

 ②それに応じたジェスチャー関数を実装する ( {ジェスチャー名} Gesture detected 関数)

 

①の処理

 Type引数で今回有効にするジェスチャーを選択します

f:id:dabura:20150828020026p:plain

 

②の処理

 返り値の Gesture は、Circleであれば描いた丸のサイズなどジェスチャーの詳細情報を取得することが可能です

 ScreenTapはなぜか反応しませんでした。なにかしなければいけない手順等あれば教えてください!

 有効なジェスチャーをするとここの処理が一定時間走ります

f:id:dabura:20150828020044p:plain

なのでこのまま、Gesture Detected関数の後に球を発射する関数を呼び出すと以下のようになってしまいます

f:id:dabura:20150828013037g:plain

( Circleジェスチャー後、常に弾が出続ける図 )

 

今回は1回のジェスチャー判定で1回の玉が出るようにしたいのでtrigger判定を実装します

ぱっと見た感じtrigger判定の関数が見当たらなかったので自作のtrigger判定を実装します( 車輪の再開発状態だったらすみません! )

f:id:dabura:20150828021333p:plain

f:id:dabura:20150828021321p:plain

 

先ほどの「①のジェスチャーを有効にする ( enbleGesture 関数 )処理」をSwipeに設定し、合わせて実装すれば以下のような感じになります

f:id:dabura:20150828021549g:plain

 

ビームパーティクルの説明は次回でやります