unityで『kinect for windows v2 / xboxone controller』を使う
DESCRIPTION
2014年10月16日に開催された、日本マイクロソフト社主催の『Windows Game Jam w/Unity 事前勉強会』での講演資料です。 Kinect for windows v2、 XboxOne Controller、Leap Motionの接続事例、サンプルプログラムでの説明が記載されています。 サンプルプログラムやゲームジャムで活用出来るイラスト素材などのダウンロードリンクの記載もあります。TRANSCRIPT
デバイスまみれ!
Kinect for Windows v2 / XboxOne Controller (おまけでOculus Rift / Leap Motion)
を Unityで 使う
株式会社ポケット・クエリーズ
代表取締役
佐々木 宣彦
2014年10月16日 Windows Game Jam w/Unity 事前勉強会
自己紹介
2
iiOOSS、AAnnddrrooiidd、ブラウザゲームの 企画 -- デザイン -- 開発 -- 運用を承ります
を 暮らしへ。
ゲームのちからで世の中を変えます
『ゲーム AAII 技術』
で業界貢献。
ゲームのちからの世界事例を積極的に発信
『セミナー講演』
『UUnniittyy でゲーム開発』
『ポケクエ』
ゲームのちから。 それは人を夢中にさせる あたらしいエネルギーのこと。
株式会社ポケット・クエリーズ 『ポケクエ』
株式会社ポケット・クエリーズ 『ポケクエ』
① 受託開発・自社タイトル のゲーム開発
4
h3ps://www.facebook.com/pocketqueries マルチルート ディフェンス ゲーム
( iOS / Android / Windows )
株式会社ポケット・クエリーズ 『ポケクエ』
② VVRRなどのデバイスの活用研究
++
OOccuulluuss LLeeaapp MMoottiioonn
h3ps://www.facebook.com/pocketqueries
日本テレビ News ZERO
株式会社ポケット・クエリーズ 『ポケクエ』
③ クエリちゃんプロジェクト h3ps://www.facebook.com/pocketqueries
Twi3erアカウント @Query_chan
アジェンダ
7
1. XboxOne Controller (+ Oculus) との接続
2. Kinect for Windows v2 との接続
3. Leap Motion との接続
1. XboxOne Controller (+ Oculus) との接続
8
XboxOne Controller 各部の正式名称
9
1 左スティック (アナログ入力 + ボタン)
2 L ボタン
3 ビューボタン
4 USB充電端子
5 Xbox ボタン
6 メニューボタン
7 R ボタン
8 方向パッド
X X ボタン
Y Y ボタン
A A ボタン
B B ボタン
9 拡張端子
10 右スティック (アナログ入力 + ボタン)
11 右トリガー (アナログ入力)
12 赤外線ウインドウ
13 ワイヤレス割当ボタン
14 左トリガー (アナログ入力)
15 バッテリーカバー
赤字部: 本日使用します
XboxOne Controller 組込み手順
10
http://support.xbox.com/ja-JP/xbox-one/accessories/controller-pc-compatibility
① ドライバのダウンロードとインストール
ドライバの ダウンロードリンク
XboxOne Controller 組込み手順
11
サンプルソース: http://pocket-queries.co.jp/downloads/Seminar_Sample/SampleXB1Controller.zip
② Unity側での設定 -> InputManagerを設定する (サンプルプロジェクトからInputManager.assetファイルを自分のプロジェクトにコピーしても良い)
XboxOne Controller 組込み手順
12
InputManager への追加設定内容
追加
XboxOneController で使用するタグ
ボタン系の設定
アナログ系の設定
これらの値が 各スティックや トリガボタンに対応
XboxOne Controller 組込み手順
13
部品名称 タグ名 Posi[ve Bu3on Type Axis
1 左スティック (アナログ入力 + ボタン) Ls[ck H Ls[ck V
-‐ -‐
Joys[ck Axis Joys[ck Axis
X Axis Y Axis
2 L ボタン XB1Le`Shoulder joys[ck bu3on 4 Key or Mouse Bu3on X Axis
3 ビューボタン XB1View joys[ck bu3on 6 Key or Mouse Bu3on X Axis
6 メニューボタン XB1Menu joys[ck bu3on 7 Key or Mouse Bu3on X Axis
7 R ボタン XB1RightShoulder joys[ck bu3on 5 Key or Mouse Bu3on X Axis
8 方向パッド PadPlus H PadPlus V
-‐ -‐
Joys[ck Axis Joys[ck Axis
6th Axis 7th Axis
X X ボタン Fire3 joys[ck bu3on 2 Key or Mouse Bu3on X Axis
Y Y ボタン Jump joys[ck bu3on 3 Key or Mouse Bu3on X Axis
A A ボタン Fire1 joys[ck bu3on 0 Key or Mouse Bu3on X Axis
B B ボタン Fire2 joys[ck bu3on 1 Key or Mouse Bu3on X Axis
10 右スティック (アナログ入力 + ボタン) Rs[ck H Rs[ck V
-‐ -‐
Joys[ck Axis Joys[ck Axis
4th Axis 5th Axis
11 右トリガー (アナログ入力) Trigger -‐ Joys[ck Axis 3rd Axis
14 左トリガー (アナログ入力)
InputManager への追加設定内容
XboxOne Controller 組込み手順
14
ボタン・アナログ系入力の取得方法
ボタンアクションの取得
スティックアクションの取得
トリガアクションの取得
Oculus Rift + GamePad (XboxOne Controller) デモゲーム
15
インターネットウイルスに冒されて巨大化したクエリちゃんが、アキバの街で大暴れ
Oculus Rift + GamePad (XboxOne Controller) デモゲーム
16
バイク
ヘリコプター
2. Kinect for Windows v2 との接続
17
Kinect for Windows v2 各部の正式名称
18
Kinect for Windows v2 組込み手順
19
http://www.microsoft.com/en-us/download/details.aspx?id=43661
① SDK のダウンロードとインストール
SDK の ダウンロードリンク
Kinect for Windows v2 組込み手順
20
② サンプルで遊んでみる 音源方向認識
Fusion
Kinect for Windows v2 組込み手順
21
③ Unityプラグイン のダウンロード (Unity Pro用)
Unity プラグイン の ダウンロードリンク
Kinect for Windows v2 組込み手順
22
④ Unityプラグイン のインストール - KinectForWindows_UnityPro_PublicPreview_1409.zip を解凍 - 下記をUnityプロジェクトにインポート
1. Unityパッケージを インポート
2. デモシーンを インポート
Kinect for Windows v2 組込み手順
23
GreenScreenデモ
KInectViewデモ
Kinect for Windows v2 接続事例
24
サンプルソース: http://pocket-queries.co.jp/downloads/Seminar_Sample/KinectSample.zip
・KinectでBody認識 : 声①再生 ・KinectでBody認識解除 : 声②再生 ・右手上げ認識 : モーション①と声③再生 ・左手上げ認識 : モーション②と声④再生 ・両手上げ認識 : モーション③と声⑤再生 ・両手下げ認識 : モーション④と声⑥再生
Assets/PQAssets/KinectDemo_Query-‐Chan/Scenes/Kinect_Query-‐Chan.unity
Kinect for Windows v2 接続事例
25
BodySourceView.cs
BodyView
Kinect for Windows v2 接続事例
26
①Bodyオブジェクトの生成と取得
Bodyの各関節の取得方法
②UnityのGameObjectの生成と更新
BodySourceView.cs
Kinect for Windows v2 接続事例
27
Bodyの各関節の取得方法(続き)
BodySourceView.cs
③このメソッドで関節を取得出来る
Kinect Body(関節)名称
28
Kinect.JointType.xxxxxxx について
Head
Neck
SpineShoulder
SpineMid
SpineBase
ShoulderRight
ElbowRight
WristRight
HandRight
HandTipRight
ThumbRight
HipRight
KneeRight
AnkleRight
FootRight
ShoulderLeft
ElbowLeft
WristLeft
HandLeft
HandTipLeft
ThumbLeft
HipLeft
KneeLeft
AnkleLeft
FootLeft
Kinect for Windows v2 接続事例
29
Kinect SDKのUnityプラグイン(KinectForWindows_UnityPro_PublicPreview_1409.zip)から ベースのソースを流用
Body認識時に このメソッドが呼ばれるので
クエリちゃん制御用の メソッド呼び出し処理を差し込み!
クエリちゃんの制御
Kinect for Windows v2 接続事例
30
Body認識解除時には ここで後処理しているので
クエリちゃん制御用の メソッド呼び出し処理を差し込み!
Kinect for Windows v2 接続事例
31
呼ばれる側(Body認識時)
呼ばれる側(Body認識解除時)
Kinect for Windows v2 接続事例
32
ジェスチャ(右手上げ等)の認識は 単純に関節のGameObjectの座標比較で処理
クエリちゃん 3Dモデル
33
ダウンロードはこちら! à http://www.query-chan.com
クエリちゃん 3Dモデル
34
ダウンロードはこちら! à http://www.query-chan.com
29個のモーション☆ 24個の表情♪
70個の ボイス♡ その他、ゲームに使い易い『しかけ』
クエリちゃん 3Dモデル
35
ダウンロードはこちら! à http://www.query-chan.com
Ver. 2.0.0 リリース! ・ハロウィンモデル追加 ・メカニム対応
3. Leap Motion との接続
36
Leap Motion 組込み手順
37
①Leap Motionのドライバーをインストールしておく
②LeapDeveloperKit(V.1.2)をダウンロードし、下記フォルダパスのPluginsフォルダを
UnityプロジェクトのAssetsフォルダ直下にコピーする
Leap Motion 〜 Unityでの制御 〜
38
手のひらと 5本の指先を検出し GameObjectを制御
Leap Motion 〜 Unityでの制御 〜
39
①LeapMo[onのオブジェクトと Interac[onBoxオブジェクト生成
②指を取得( i 番目の指)
③Interac[onBoxオブジェクトを 用いてLeapの座標系をUnityの 座標系に変換
Oculus Rift + Leap Motion デモゲーム
40
辞書キャラ『ブーフ』を手のひらで操り、 飛んでいるアルファベットを集めよう!
Oculus Rift + Leap Motion デモゲーム
41
Oculus Rift + Leap Motion デモゲーム
42
h3p://pocket-‐queries.co.jp/boof_3d.html
弊社サイトでアプリ無償配布中 世界の料理編(iOS・Androidアプリ)
も無償配布中
h3p://pocket-‐queries.co.jp/product.html#fcb
お越し下さい!
43
2Dゲーム用にクエリちゃん2Dスプライトアニメ素材を本日先行公開!!! (10月下旬にUnityAssetStoreでの正式公開に先駆けて) h3p://www.query-‐chan.com/data/Query-‐Chan_2D_v001.zip
ご応募下さい!
44
h3p://pronama.github.io/mascot-‐apps-‐contest/2014/