Oculus DK2 + Surface PRO3

VR系の物は色々入手して遊んで研究しています。

Oculus Rift DK2も入手後、自分のメインマシンである Surfade Pro 3で動作させられないかと思っていました。DK2は高性能なGPUを積んだPCでないと満足行く動作が得られない事はわかっていますが、動かしてみたかったんです。

dk2_box

Surface ProやSurface Pro2では苦労して動かされている人がいましたが、Surface Pro3では、ぐぐっても動くのか動かないのか明確な話が出ていませんでした。
結論からいうと、動きました。途中あきらめたりもしましたが、振り返ってみれば、さくっと動作させることができるという印象です。満足いく速度が出るかは、現在、未検証ですが、付属のデモアプリを動作させることができましたので、その報告です。

公式ドキュメント的には、以下のドキュメントで記載された部分の検証です。

DK_2_Quick_Start_Gude
Oculusのハードウェアに紙として入ってる物と同じ
組み立てまで記載

Oculus Users Guide
Start Guideの次に読む、デモアプリを動かす所まで

検証環境

surfacepro3

Oculus RiftをPCと接続するには、USBポートが2つ必要になりますが、Surface PRO3は、USBポートが一つしかありませんので、ドッキングステーションを使用しました。未検証ですが普通にUSBハブを使っても大丈夫だと思います。

Surface PROのディスプレイ出力端子は、MiniDisplayポートです。Oculus RiftはHDMIですので、会社にあった変換アダプタを使用しました。基本的に変換できればなんでも良いのではと思います。

開封とOCulusの組み立て

開封レポート書くの好きなのですが、色々な方が書いていますし、今回は自粛して、届いた物を、ドキュメントに従って組み立て、HDMIにmini Displayポート変換アダプタを取り付けました。

oculus_connect

ごちゃごちゃしてるー

oculus_minidisplayport(変換アダプタ接続)

ソフトウェアのインストール

オキュラスサイトに行き、デベロッパーアカウントを作成して、ダウンロードサイトからダウンロードします。

Oculus SDK v0.4.3 Beta

  • Oculus Runtime for Windows
  • Oculus SDK for Windows
  • Oculus Unity Tuscany Demo
  • Unity 4 Integration

rift_download_list

取りあえずの動作確認なので、Oculus Runtime for Windowsである「oculus_runtime_rev_1_sdk_0.4.3_win.exe」を実行してインストールします。

インストール後自動的にサービスが立ち上がって、タスクバーにアイコンが出てきて終了です。(画像右下の目玉)

特に何も問題なくさくっといきました。
windows_taskbar

この後PCを再起動するのがいいと思います。
私は再起動せずに続けて作業を行い苦労しました。(後述します)

PCとの接続

次にUSBを2つドッキングステーションに接続し、mini Displayポートにも接続します。
つまらない事でつまずくと時間の無駄ですので、オプション使用の電源もコンセントに指しました。

oculus_surface_connect(ドッキングステーション裏)

ごにょごにょっと、ダイアログが出てインストールが開始されます。

この状態で、デバイスマネージャーをみるとこんな感じで、Oculusが汎用Pnpモニターとして認識されています(特に見なくてもいいですが)

rift_device_manager

Oculusはこの状態で電源がONになっており、右上の場所がオレンジに点灯します。
次にタスクバーに常駐しているサービスの「Confiration Utility」と「Rift Display Mode」の2つを利用して設定していきます。

windows_taskbar2

私の問題点

この状態で、私の場合は問題が発生しました。
Oculus Utilityを起動しても、?マークが表示されNo Device Attached となりました。

rift_no_device

本来であれば、ここにOculusの画像が出てくるはずです。

rift_device_success

変換アダプターが悪いのか、そもそもSurface PRO3で動かないとか?色々ググったりもしました。コネクターを抜き差しすると良くなるという話もあったのでやってみるが、まったく改善せず。

Rift Display Modeの方は、以下のように、Direct HMD Access from Appsにしろ、Extend Desktop to HMDにしろDisableになっていて選択できません。

rift_displaymode_first

散々ググったのですが、何もできず、その日は、ふてくされて帰宅しました。

次の日、なんとなく見てみると、あれ?Rift Display Modeの設定ができる!

Windows Updateが来てたので朝なんとなく再起動したのが良かったのか、無事インストール作業を継続する事が可能になりました。
確信は持てませんが、ランタイムインストール後、PCを再起動をお勧めします。

セットアップ

私のような問題が発生しなかった人は、ここからが、「PCとの接続」の後の作業になります。
Oculus Configuration Utilityを立ち上げて無事Oculusが認識されているのを確認したら、Rift Display Modeを立ち上げてモード設定をします。

Direct HMD Access from Apps
画面出力を直接するので、こちらの方が高速です。
Windowsからは、サブディスプレイとして認識されません

しかしながら、GPUによっては、うまく動作しない場合があるとの事です。
もちろんうまく動作しませんでした。

rift_stop_service

サービスが死んでしまいますので、C:\Program Files (x86)\Oculus\Tools\OculusConfigUtil.exeを実行すると、サービスが起動してやりなおしができます。

Extend Desktop to HMD

Windowsから、サブディスプレイとして認識されます。

こちらを設定したらうまく動作しました。

rift_display_mode_success

サブディスプレイとして認識するため、次にWindowsからサブディスプレイの設定をします。

Oculsはセカンドディスプレイとなっているので、Windowsの「画面の解像度」からセカンドディスプレイの扱いを変更します。

最初に開いた状態では以下のような感じでした。
「複数のディスプレイ」の部分を、「表示画面を拡張する」に変更します。

rift_display_setting1

適用させると以下のようになります。
適用前では、Riftの解像度間違っていたのですが、正しく1920×1080になりました。
「向き」が「縦」になっているので、これを「横」にします。

rift_display_setting2

適用させると以下のようになります。
最終的には以下のような画面設定になります。
(途中、「これをメインディスプレイにする」のチェックボックスが知らない間についてしまい、あれ?あれ?状態になりました。注意してください)

rift_display_setting4

これで終了です。

デモの再生

Oculus Configration Utilityを起動して、左下の「Show Demo Scene」ボタンを押しますが、体験する人のUser設定(性別や身長)等を入力しないと、Demoボタンを押せるようにならないので適当に入力します。

「Show Demo Scene」ボタンを押すと、PC画面が一瞬ブラックアウトしたあと、マウスカーソルが消えます。この状態でOculusをセットしてデモを体験します。

oculus_work

Oculs画面上でもマウスを使用する事ができます。
また、デモを終了するにはキーボードのESCボタンを押します。

最後に

とりあえず、Surface PRO 3でOculusを動作させたメモとなります。

ネット上を散々見て回ったのですが、明確に動いた!という記事が見つからなかったので、詳しく説明を起こしてみました。

まだ、Surface PRO3には、SDKもインストールしてません。とりあえずデモを動かした状態です。速度がどれぐらいでるかの判断、持ち歩きを考えるのならドッキングステーションを持っていくわけにはいかないので、USBハブを使った動作確認等が必要になりますが、これから試していこうと思っています。
なにか有用なTipが出ましたら記事にしたいと思っております。