以前ブログで、社内の制度である「スペシャリスト研究支援制度」を紹介しましたが、
その制度をつかってオキュラスを買いました。
Oculus VR
https://www.oculus.com/ja/
こういう機材も自由に買えちゃうんです。
設定
・付属の手順書に従って、本体、ヘッドトラッキングセンサを接続する
・ランタイムやSDKをインストールする
https://developer.oculus.com/downloads/
・Runtime内のOculusConfigUtilでファームウェアのアップデートをする
・Macのシステム環境設定でディスプレイの設定をする
・赤みがかっていたら、ディスプレイプロファイル変更する
・画面が90度回転していたら、回転の設定を変更する
・ミラーリングにチェックをつける
SDKにデモアプリ(OculusWorldDemo)が付属されているので動作を確認できます。
試しに対応アプリを作ってみた
早速Unityでアプリを作ってみました。
1.「Unity 4 Integration」を公式サイトからダウンロードする
2.OculusUnityIntegration.unitypackageをインポートする
3.既存のMain Cameraを無効にする
4.プレハブのOVRCameraRigかOVRPlayerControllerを使う
・OVRCameraRig
VR用Cameraオブジェクト。HMDの向きが反映される。通常Unityで使うCameraをこれで置き換えればVR用のビューができる。
・OVRPlayerController
キーボードなどでシーンを歩きまわれるようにいろいろセットアップされている。メニュー機能とかついている。子ノードにOVRCameraRigが使われている。
例1:OVRPlayerControllerを使う場合
OVRPlayerControllerプレハブをシーンにそのまま置く。
CharacterControllerがコンポーネントとして加えられているので、キーボードで歩き回れる。
例2:OVRCameraRigを使う場合
空のGameObjectを作り、チャイルドにOVRCameraRigを置く。
そのGameObjectを独自で制御して使用する。
今回はOVRCameraRigを使いました。
方向キーを押すと、Unitychanの方を見ながら周りを移動するようなC#スクリプトも書きました。
Unitychanを眺めるだけのアプリです。
周りの白いのは雪のパーティクルエフェクトです。
※Unity5.1ではオプションが追加され、それにチェックを入れるだけで立体視対応になる機能が入るそうです。
社内で体験会
せっかくのVR体験を自分だけではもったいないと思い、社内で体験会を行うことにしました。
デモは上記作ったものと、SDK付属のものです。
「おお!すごい!」
「ユニティちゃん触れそう」
「階段降りるときヒュッとする」
大好評でした。
エンジニアだけでなくデザイナーや企画職のみなさん、役員の方も体験して楽しんでいただけました。
所感
・HMDの向きを検知できる範囲が広い(真上や真下、360度向けられる)
・ヘッドトラッキングのレイテンシが少なく、ほぼリアルタイムで向いた方向と同じ角度がとれている
・想像していた以上に3D空間への没入感があり、アプリの世界にほんとに入ってしまったような感覚になる
・Unityへの組み込みは簡単だった(Unity5.1でもっと簡単に)
・SDKはまだbeta版。。。
同じ3DのアプリでもPCの画面を見てプレイするのと、このデバイスを使うのとでは体験のレベルが全然違うのを実感しました。
また、体験会を行うことで、VR体験やそのおもしろさを社内で共有できたのが良かったです。
これをきっかけにおもしろいゲームの発想が湧いてきたらと思います。
おもしろさをどう表現して形にすればいいのか、VRに限らず重要な考え方につながります。
今後も引き続きVRへのアンテナを張っていきたいと思います。