読者です 読者をやめる 読者になる 読者になる

OculusRift DK2のソフト開発環境を整える(Unity Mac版)

Oculus Rift Unity

DK2が届き、有志の方々によって手順が公開されていますが、Mac版はあまり情報がありませんでした。

Mac版の対応からそんなに経ってないこともありますが、MacだとFPS75を出せる機種が限られてるというのも大きいと思います。

たとえば、Intel Iris Graphic5100搭載のMacBookProで
・背景なし
・オブジェクト1個のみ
・Extend(ミラーリング)
という最低限の環境でFPSを表示してみましたが、結果は以下の通りです。

f:id:Takyu:20140831211344p:plain


やはりIntel内蔵グラフィックボードでは75FPSは厳しいですね。

          • -

(追記:@needleさん、情報ありがとうございました)
上記の画像では60FPS固定になっていたようです。
以下の手順を実行すると60FPS以上出ることが確認できますが、最低限のオブジェクトしか描画してなくても61〜71FPSとぶれてしまいました。

画面比率が変なのであまりよい設定ではありませんが、参考のため手順を示します。

1. 「システム設定」→「ディスプレイ」→「配置」で「ディスプレイをミラーリング」を選択
2. 「解像度の設定」がRift DK2になっている状態で「変更」を選択し、948×1080を選択

この状態でUnityで実行すると、60FPS以上出ることが確認できます。

ちなみに、本当は画面を90度回転させないと画面比率がおかしいことになるのですが、なぜか90度回転(縦から横へ)すると、60FPS以上出なくなります。

f:id:Takyu:20140831230329p:plain

通常の画面比率で60FPS以上出せるのか、については私の調査不足なだけで、方法があるかもしれません。
この追記部分については参考程度にしてください。

          • -


ただ、私の場合、移動中とかにコードを書くことが多いので、開発自体は今後もMacBook Proでやりたいと考えてます。


ということで、Mac,Unityの組み合わせでDK2向けソフトを開発するための環境を整えることにしました。


まず、DK2開封からMacで動かすまでの基本的な手順は、下記のtakahi5さんのブログにてわかりやすく説明されているので省略します。私も参考にさせていただきました。ありがとうございます。


Oculus Rift DK2届いた!macbook proで動かしてみた! - ちょっと未来


次にUnityでDK2用アプリケーションを開発するための最低限の手順です。

[試した環境]

  • MacBook Pro(Late2013 , Intel Iris Graphics 5100)
  • Unity 4.5.3f3 (Unity4.5以上必須)
  • Oculus SDK 0.4.1 (Macでは0.4.1以上必須)

[手順]

1. OculusVRのDeveloperCenterから、ovr_unity_0.4.1_lib.zipを入手

2. zipを解凍し、unityの新規プロジェクトを起動中に、OculusUnityIntegrationフォルダのOculusUnityIntegration.unitypackageを実行

3. 2のunitypackageをインポート後、MainCameraを削除し、OVRPlayerControllerのPrefabをHierarchyに置く。

4. OVRPlayerControllerのInspectorでGravity Modifierを0にするか、Planeを敷いて、無限落下しないようにする。


以下は、Unityプロジェクト毎に初回のみ実行してください。

5. Mac用runtimeのOculusUtilConfigを実行し、DK2を配線通りに接続する

6. DK2のランプが青色であることを確認したら、UnityのMaximize on Playを選択してから、Unity上でシーンを実行する。

7. DK2をMacから取り外し、Unityだけで実行し、マウスカーソルの動きでViewを左右に移動できることを確認する。

[注意]

  • Unityプロジェクト作成後、初回はDK2を接続しないと、画面全体が灰色の四角形で覆われてしまいました。

f:id:Takyu:20140831210626p:plain


OnGUIでどこかに描画指示があるかと思ったのですが、ざっと調べた限りでは見つけることができませんでした。
探し方の不足か、そもそもbundle内に埋め込まれているのかは不明です。

ただし、DK2を接続すると、下記のように灰色の四角形は描画されなくなりました。

f:id:Takyu:20140831211006p:plain

また、DK2を外してからUnityで実行しても灰色の四角形は描画されませんでした。


この辺りの詳しい原因は不明ですが、とりあえずMacで開発を進めることはできそうなので、この方法で進めていきます。

DK2を接続して動作させることはできますが、私みたいにGeForce非搭載のMacで開発する場合は、開発専用と割り切った方がよさそうです。


蛇足ですが、DK2の性能確認&OcuFes出展用に新しいWindowsPCを購入して、こんな開発環境で進められたらなと思ってます。

f:id:Takyu:20140831215408p:plain


新しく購入するPCがデスクトップだとより安心なのですが、OcuFesに持っていくのが大変という問題があります。

とりあえずもう少し情報を集めつつ考えてみます。