unityで『kinect for windows v2 / xboxone controller』を使う

44
デバイスまみれ! Kinect for Windows v2 / XboxOne Controller (おまけでOculus Rift / Leap Motion) を Unityで 使う 株式会社ポケット・クエリーズ 代表取締役 佐々木 宣彦 2014年10月16日 Windows Game Jam w/Unity 事前勉強会

Upload: nobuhiko-sasaki

Post on 17-Dec-2014

2.005 views

Category:

Internet


1 download

DESCRIPTION

2014年10月16日に開催された、日本マイクロソフト社主催の『Windows Game Jam w/Unity 事前勉強会』での講演資料です。 Kinect for windows v2、 XboxOne Controller、Leap Motionの接続事例、サンプルプログラムでの説明が記載されています。 サンプルプログラムやゲームジャムで活用出来るイラスト素材などのダウンロードリンクの記載もあります。

TRANSCRIPT

Page 1: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

デバイスまみれ!

Kinect for Windows v2 / XboxOne Controller (おまけでOculus Rift / Leap Motion)

を Unityで 使う

株式会社ポケット・クエリーズ

代表取締役

佐々木 宣彦

2014年10月16日 Windows  Game  Jam  w/Unity  事前勉強会

Page 2: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

自己紹介

2

Page 3: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

              

iiOOSS、AAnnddrrooiidd、ブラウザゲームの 企画 -- デザイン -- 開発 -- 運用を承ります

           を 暮らしへ。

ゲームのちからで世の中を変えます

『ゲーム AAII 技術』

          で業界貢献。

ゲームのちからの世界事例を積極的に発信

『セミナー講演』

『UUnniittyy でゲーム開発』

『ポケクエ』

ゲームのちから。 それは人を夢中にさせる あたらしいエネルギーのこと。

株式会社ポケット・クエリーズ 『ポケクエ』

Page 4: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

株式会社ポケット・クエリーズ 『ポケクエ』

① 受託開発・自社タイトル のゲーム開発

4

h3ps://www.facebook.com/pocketqueries マルチルート ディフェンス ゲーム  

( iOS  /  Android  /  Windows  )

Page 5: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

株式会社ポケット・クエリーズ 『ポケクエ』

② VVRRなどのデバイスの活用研究

++

OOccuulluuss   LLeeaapp MMoottiioonn

h3ps://www.facebook.com/pocketqueries

日本テレビ News  ZERO

Page 6: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

株式会社ポケット・クエリーズ 『ポケクエ』

③ クエリちゃんプロジェクト h3ps://www.facebook.com/pocketqueries

Twi3erアカウント  @Query_chan

Page 7: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

アジェンダ

7

1.  XboxOne Controller (+ Oculus) との接続

2.  Kinect for Windows v2 との接続

3.  Leap Motion との接続

Page 8: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

1. XboxOne Controller (+ Oculus) との接続

8

Page 9: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

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 バッテリーカバー

赤字部: 本日使用します

Page 10: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

XboxOne Controller 組込み手順

10

http://support.xbox.com/ja-JP/xbox-one/accessories/controller-pc-compatibility

① ドライバのダウンロードとインストール

ドライバの  ダウンロードリンク

Page 11: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

XboxOne Controller 組込み手順

11

サンプルソース:  http://pocket-queries.co.jp/downloads/Seminar_Sample/SampleXB1Controller.zip

② Unity側での設定   -> InputManagerを設定する      (サンプルプロジェクトからInputManager.assetファイルを自分のプロジェクトにコピーしても良い)

Page 12: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

XboxOne Controller 組込み手順

12

InputManager への追加設定内容

追加

XboxOneController  で使用するタグ

ボタン系の設定

アナログ系の設定

これらの値が  各スティックや  トリガボタンに対応

Page 13: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

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 への追加設定内容

Page 14: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

XboxOne Controller 組込み手順

14

ボタン・アナログ系入力の取得方法

ボタンアクションの取得

スティックアクションの取得

トリガアクションの取得

Page 15: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Oculus Rift + GamePad (XboxOne Controller) デモゲーム

15

インターネットウイルスに冒されて巨大化したクエリちゃんが、アキバの街で大暴れ

Page 16: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Oculus Rift + GamePad (XboxOne Controller) デモゲーム

16

バイク

ヘリコプター

Page 17: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

2. Kinect for Windows v2 との接続

17

Page 18: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 各部の正式名称

18

Page 19: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 組込み手順

19

http://www.microsoft.com/en-us/download/details.aspx?id=43661

① SDK のダウンロードとインストール

SDK  の  ダウンロードリンク

Page 20: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 組込み手順

20

② サンプルで遊んでみる 音源方向認識

Fusion

Page 21: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 組込み手順

21

③ Unityプラグイン のダウンロード (Unity Pro用)

Unity  プラグイン の  ダウンロードリンク

Page 22: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 組込み手順

22

④ Unityプラグイン のインストール   - KinectForWindows_UnityPro_PublicPreview_1409.zip を解凍   - 下記をUnityプロジェクトにインポート

1. Unityパッケージを  インポート

2. デモシーンを  インポート

Page 23: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 組込み手順

23

GreenScreenデモ

KInectViewデモ

Page 24: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

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

Page 25: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

25

BodySourceView.cs

BodyView

Page 26: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

26

①Bodyオブジェクトの生成と取得  

Bodyの各関節の取得方法

②UnityのGameObjectの生成と更新  

BodySourceView.cs

Page 27: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

27

Bodyの各関節の取得方法(続き)

BodySourceView.cs

③このメソッドで関節を取得出来る  

Page 28: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

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

Page 29: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

29

Kinect  SDKのUnityプラグイン(KinectForWindows_UnityPro_PublicPreview_1409.zip)から ベースのソースを流用

Body認識時に  このメソッドが呼ばれるので

クエリちゃん制御用の  メソッド呼び出し処理を差し込み!

クエリちゃんの制御

Page 30: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

30

Body認識解除時には ここで後処理しているので  

クエリちゃん制御用の  メソッド呼び出し処理を差し込み!

Page 31: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

31

呼ばれる側(Body認識時)

呼ばれる側(Body認識解除時)

Page 32: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Kinect for Windows v2 接続事例

32

ジェスチャ(右手上げ等)の認識は  単純に関節のGameObjectの座標比較で処理

Page 33: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

クエリちゃん 3Dモデル

33

ダウンロードはこちら! à http://www.query-chan.com

Page 34: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

クエリちゃん 3Dモデル

34

ダウンロードはこちら! à http://www.query-chan.com

29個のモーション☆ 24個の表情♪

70個の  ボイス♡ その他、ゲームに使い易い『しかけ』

Page 35: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

クエリちゃん 3Dモデル

35

ダウンロードはこちら! à http://www.query-chan.com

Ver.  2.0.0 リリース!   ・ハロウィンモデル追加   ・メカニム対応

Page 36: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

3. Leap Motion との接続

36

Page 37: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Leap Motion 組込み手順

37

①Leap Motionのドライバーをインストールしておく

②LeapDeveloperKit(V.1.2)をダウンロードし、下記フォルダパスのPluginsフォルダを

  UnityプロジェクトのAssetsフォルダ直下にコピーする

Page 38: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Leap Motion 〜 Unityでの制御 〜

38

手のひらと  5本の指先を検出し  GameObjectを制御

Page 39: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Leap Motion 〜 Unityでの制御 〜

39

①LeapMo[onのオブジェクトと  Interac[onBoxオブジェクト生成

②指を取得( i  番目の指)

③Interac[onBoxオブジェクトを    用いてLeapの座標系をUnityの    座標系に変換

Page 40: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Oculus Rift + Leap Motion デモゲーム

40

辞書キャラ『ブーフ』を手のひらで操り、 飛んでいるアルファベットを集めよう!

Page 41: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Oculus Rift + Leap Motion デモゲーム

41

Page 42: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

Oculus Rift + Leap Motion デモゲーム

42

h3p://pocket-­‐queries.co.jp/boof_3d.html

弊社サイトでアプリ無償配布中 世界の料理編(iOS・Androidアプリ)  

 も無償配布中

h3p://pocket-­‐queries.co.jp/product.html#fcb

Page 43: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

お越し下さい!

43

2Dゲーム用にクエリちゃん2Dスプライトアニメ素材を本日先行公開!!!  (10月下旬にUnityAssetStoreでの正式公開に先駆けて)    h3p://www.query-­‐chan.com/data/Query-­‐Chan_2D_v001.zip

Page 44: Unityで『Kinect for Windows v2 / XboxOne Controller』を使う

ご応募下さい!

44

h3p://pronama.github.io/mascot-­‐apps-­‐contest/2014/