Slide 1

Slide 1 text

Unityで意外と簡単・・・ だけど難しいVRコンテンツ 株式会社インフィニットループ システム開発部 山口直樹

Slide 2

Slide 2 text

対象者 ・VRの開発をやったことない人 ・VRの開発って難しいって思ってる人

Slide 3

Slide 3 text

株式会社インフィニットループとは ・ゲーム開発 ・モバイルアプリ開発 ・Webアプリ開発 ・Linuxサーバ構築運用 サーバのことなら任せとけって会社です

Slide 4

Slide 4 text

そんなサーバな会社がなぜVR? エイプリールフールのネタが軽くバズったからです

Slide 5

Slide 5 text

自己紹介(1)  札幌のソフト会社で20年ほど 低レイヤーのネットワーク管理に従事 その後、インフィニットループに転職 山口 直樹 得意な言語 そもそもプログラムなんてやってない 特技 UTPケーブルの8字巻き

Slide 6

Slide 6 text

自己紹介(2)  会社でVRのコンテンツをはじめて見て「こ れ出来ればあんなことやこんなこともで きるじゃん!!」と 思って覚え始めた去年の12月 あいえるたんさわさわ Vive あいえるたん お姫様だっこ せかいぬりえ

Slide 7

Slide 7 text

実は全然すごくない!!

Slide 8

Slide 8 text

第一章 Unityで VRコンテンツを作ってみる

Slide 9

Slide 9 text

UnityでHTC Viveを動かしてみよう! 1.Asset StoreからSteamVRをインストール 手段方法は問いませんので プロジェクトにインポート その時に何か聞かれるでyes でOK

Slide 10

Slide 10 text

UnityでHTC Viveを動かしてみよう! 2.[CameraRig]をHierarchyにドラッグ&ドロップ その時にカメラが2つ になっちゃうので元の カメラを削除

Slide 11

Slide 11 text

UnityでHTC Viveを動かしてみよう! 終了

Slide 12

Slide 12 text

UnityでHTC Viveを動かしてみよう!

Slide 13

Slide 13 text

Oculas Rift 、GearVRでは? Build settingsのPlayer Settingsで 【Virtual Reality Supported】のチェック をつければOK ・・・これだけです

Slide 14

Slide 14 text

とりあえず動いたけど。。。 VR空間って感じがしない もっとなんか仮想現実って感じは?? AssetStoreから適当に(問題発言) モデルデータをインポートすればいんじゃない? Unityのすてきなところ!

Slide 15

Slide 15 text

もう少し仮想空間っぽくしてみる 1.AssetStoreでなんかないか検索 お金がないので無 料で探してみる

Slide 16

Slide 16 text

もう少し仮想空間っぽくしてみる 2.見つけたAssetをダウンロード&インポート これ、 無料でなんか すごくない??

Slide 17

Slide 17 text

もう少し仮想空間っぽくしてみる 3.デモを開いて、カメラを入れ替える

Slide 18

Slide 18 text

もう少し仮想空間っぽくしてみる 終了

Slide 19

Slide 19 text

もう少し仮想空間っぽくしてみる

Slide 20

Slide 20 text

カメラを入れ替えれば VRコンテンツになるんじゃね? ということは。。。

Slide 21

Slide 21 text

よくあるVRコンテンツ その1 ジェットコースター (6$)

Slide 22

Slide 22 text

よくあるVRコンテンツ その1 同じようにカメラを入 れ替え そして終わり

Slide 23

Slide 23 text

よくあるVRコンテンツ その1

Slide 24

Slide 24 text

よくあるVRコンテンツ その2 女の子を部屋で。。 (10$)

Slide 25

Slide 25 text

よくあるVRコンテンツ その2 ベッドのシーンを 読み込んで、Unityちゃんを 置いて終わり

Slide 26

Slide 26 text

よくあるVRコンテンツ その2 それだけで この破壊力

Slide 27

Slide 27 text

よくあるVRコンテンツ その3 VRライブ

Slide 28

Slide 28 text

よくあるVRコンテンツ その3 Unityちゃん公式ページ (http://unity-chan.com/) からユニティちゃんライブステージ!を ダウンロード&展開

Slide 29

Slide 29 text

よくあるVRコンテンツ その3 カメラはスクリプトから呼び出していたので、とりあえず呼び出してるところをコメントアウト そしてCameraRigを置いてみました

Slide 30

Slide 30 text

よくあるVRコンテンツ その3 作り方を言わなければ、知らない人はみんな「スゲー」って言ってくれます

Slide 31

Slide 31 text

第二章 インターラクティブなことをしたい

Slide 32

Slide 32 text

HTC Vive コントローラ コントローラを利用して3D空間にインターラク ティブ要素を取り入れます。 ~インターラクティブ要素~ ・コントローラとオブジェクトの当たり判定 ・3D空間のオブジェクトを掴む、投げる ・GUIを制御(チェックボックス等)

Slide 33

Slide 33 text

当たり判定を普通に考えると ・コントローラの衝突判定用のバウンディングボックスと、 オブジェクトのバウンディングボックを求めて衝突して るかどうかを検知 ・もし、衝突してたらそれなりの処理を行う ↓ めんどくさそうなので、 きっと誰かがやってるに違いない

Slide 34

Slide 34 text

探してみると色々あります

Slide 35

Slide 35 text

色々買ってみた結果これが便利 アセットストアーで探すと有料から無料までいろいろと出てくるので、 今回はVRTK(SteamVR Unity Toolkit)を使ってみます。 (色々買ってみたけど無料が最強でした)

Slide 36

Slide 36 text

VRTK(SteamVR Unity Toolkit) ・HTC Vive(SteamVR)用のライブラリーツールキット ・コントローラ操作は一通りライブラリー化されている ・未だにメンテし続けてる ・無料 ・サンプルが豊富!

Slide 37

Slide 37 text

実績

Slide 38

Slide 38 text

オブジェクトに触ってみよう! 1.コントローラに、【VRTK_InteractTouch】を入れる 2.オブジェクトに、【VRTK_InterractableObject】を入れる 3.タッチする? のチェックボックスをON ~やること~

Slide 39

Slide 39 text

オブジェクトに触ってみよう! 1.コントローラに、【VRTK_InteractTouch】を入れる

Slide 40

Slide 40 text

オブジェクトに触ってみよう! 2.オブジェクトに、【VRTK_InterractableObject】を入れる 適当にオブジェクトを入れて スクリプトを入れます

Slide 41

Slide 41 text

オブジェクトに触ってみよう! 3.タッチする? のチェックボックスをON 正確にはタッチしたらハイライト表示をONです

Slide 42

Slide 42 text

オブジェクトに触ってみよう!

Slide 43

Slide 43 text

1.コントローラに、【VRTK_InteractGrab】を入れる 2.オブジェクトに、【VRTK_InterractableObject】を入れる 3.持つ? のチェックボックスをON ~やること~ オブジェクトを持って投げてみよう! 実際の作業はさっきのタッチと何も変わらないので割愛

Slide 44

Slide 44 text

オブジェクトを持って投げてみよう!

Slide 45

Slide 45 text

まじめに使うときは。。。 継承して使います。

Slide 46

Slide 46 text

1.コントローラに 【VRTK_UI Pointer】 【VRTK_Simple Pointer】 【VRTK_Controller Events】 3つ入れる ~やること~ UIを操作してみる! 以上

Slide 47

Slide 47 text

UIを操作してみる!

Slide 48

Slide 48 text

コピペでちょっとしたゲームを作る この2つ、足したらゲームになるのでは??

Slide 49

Slide 49 text

コピペでちょっとしたゲームを作る この2つ、足したらゲームになるのでは??

Slide 50

Slide 50 text

コピペでちょっとしたゲームを作る 2つのシーンを追加してい らないものを削除する

Slide 51

Slide 51 text

コピペでちょっとしたゲームを作る こんな感じでできあがり

Slide 52

Slide 52 text

コピペでちょっとしたゲームを作る

Slide 53

Slide 53 text

第三章 難しいVRコンテンツ

Slide 54

Slide 54 text

失敗その1 せかいぬりえ ・真っ白な世界に色を塗る子供向けVRゲーム ・コンセプトは「真っ白な世界に自分の色を塗りましょう」 作ってみよう! ってことで作ってみたものの・・・ VRは13歳以下の子供にはやらせちゃダメって倫理規定 があるので、ターゲット層がもろに出来ない 作る前に気がつけよ

Slide 55

Slide 55 text

失敗その1 せかいぬりえ 教訓: 【コンテンツ作る前にターゲット層をよく確認しましょう】

Slide 56

Slide 56 text

失敗その2 サンプルで作成したジェットコースター ・HTC Viveで作成 ・HTC Viveの特徴で歩き回れるのでジェッ トコースターの中で歩き回られたら困る ・歩き回れないようにした ・歩き回れないならHTC Viveで作る必要がないんじゃね?  (Oculas RiftやGearVRでOK?)

Slide 57

Slide 57 text

失敗その2 サンプルで作成したジェットコースター 教訓: 【コンテンツの内容を見て、そのプラットフォームで良い のか一度考えてみましょう】

Slide 58

Slide 58 text

失敗その3 サンプル作成のホラーコンテンツ ・HTC Viveで建物内を懐中電灯やランプ などで捜索 ・途中、ゾンビ等出て来てキャーキャー言 うよくあるやつ ・移動手段がワープなので一気に興ざめ

Slide 59

Slide 59 text

失敗その4 プロモーションで作成したVRコンテンツ ・キャラクターがわらわらと出て来て、キャラクターを掴んで、キャラクター同 士をのっけて得点を競うゲーム 版権元から許可が出なかったので画面はないです ・たくさんのキャラクターが足元でわらわら移動するのでわけがわからない ・足元でわらわらしないようにしたらキャラクターが掴めなくなった ・仕方がないのでバランスのいいところで妥協・・・

Slide 60

Slide 60 text

失敗その3、失敗その4 教訓: 【作ってみてはじめてわかることが多いのでいろんなも のを作って経験を積むのが大事】  (あと、ゲームデザイナーのセンスが問われるかも?)

Slide 61

Slide 61 text

失敗ではないけど・・・ 作成したVRコンテンツの面白さを 画像や動画で説明するのは難しいです

Slide 62

Slide 62 text

面白さを伝える手段の一つで クロマキー合成を使ったプレイ動画 失敗ではないけど・・・

Slide 63

Slide 63 text

失敗ではないけど・・・ ただし、かなり大掛かりになって怒られます

Slide 64

Slide 64 text

まとめ ・VRって難しそうだけどUnity使えば簡単にできるよ ・まじめに作ると大変かもだけど、ちょっとしたことなら ライブラリー使えばすぐにできるよ ・作ってみないとわからないことが多いので失敗してもい いのでとにかくいろんなものを作ってみる ・あんなことやりたいって熱意だけあれば なんでも出来る

Slide 65

Slide 65 text

ご清聴ありがとうございました