飴屋

OSVR/日記002

開封式、組み立て

OSVRが届いたのでさっそく開封しました。そして驚いたのは部品の点数でした。冷静に考えるとそんなわけないのですが、Googleのカードボードみたいなものが頭にあったので、もっと単純な仕組みなのかと思いこんでいたようです。

(想像)

ゴーグル >---(USB)---< PC
(現実)

ゴーグル >===(USB,HDMI,POWER)===< 中継機 >===(USB,HDMI)===<PC
                      | |
                  POWER ---- CAMERA

ゴーグルに三軸加速度センサーでもついていて頭の動きをトラッキングするのかと思っていたのですが、このキットではトラッキング用のCAMERAを使っているみたいです。おかげでPCの周りが配線だらけです。この辺もハードウェアメーカーさんのがんばり次第で行く行く解決していくのかもしれませんが、今は配線をいかに家の猫から守るかを考えていこうと思います。

必要な環境構築

うちはWindows環境での構築なので、このサイトから必要なものをダウンロードしました。

OSVR Runtime for Windows
OSVRの実行環境
OSVR SDK for Windows
OSVRのソフトウェア開発環境
OSVR HDK Windows Driver Pack
OSVRのハードのドライバ

これらのインストールが済むともろもろ必要なファイルは揃うようです。すでに何度もアップデートされているようなので、今後もファイルの更新は必要かもしれません。

インストールされた中で重要そうな要素を以下に並べてみました。

OSVR-Core
OSVRの動作の基幹部分。OSVR Serverを含んでいて、VRを楽しむにはこれを起動しておく必要がある模様。OSVR Serverを立ち上げるとヘッドトラッキングカメラのランプが点灯し、頭の位置の追跡が開始されます。それとともに出力ウィンドウが現れ、OSVRの状態をテキストでおいかけることができそうです。
Render Manager
OSVRのゴーグルの中にどのように出力するのかを設定する仕組みの模様。詳細は後程。
OSVR Tracker Viewer
ヘッドトラッキングの様子を監視できるアプリケーションの模様

この時点でもうOSVRアプリは実行できるので、ちょっと試しにこの辺からデモをダウンロードして試してみましたが、ゴーグルの中にVRコンテンツを出力するのに手間取ったり、うまくできなかったりしました。どうもディスプレイの設定の調整が必要な様子です。その辺を次項に。

レンダリング

(この項を書き始めるまでに大分時間が空いてしまいました。HDK2も日本国内で購入できるようになり、OSVR公式サイトでも紹介されるソフトが増えました。ランタイムのインストールもパッケージ化されて、少し簡単になったようです。試しにインストールしてみたら32bit版のちょっと古いやつだったので、64bit版や最新版をインストールしたいときは、個別にダウンロードする必要がありそうです。パッケージにはControl Panel Interface(CPI)もくっついてきて、マウス操作で設定が変更できるようになりました。その後最新版のランタイムをインストールし直したらOSVR Centralという名前になってました。)

さて、実際にHMDゴーグルに絵を映す段になって知っておくべきことがありました。

Directモード
画面の描画を直接ゴーグルに対して行うモード。
Extendedモード
ゴーグルのディスプレイをサブモニターとしてOSに認識させて、拡張モニターの中に必要なウィンドウを描画させるモード。

ゴーグルの中に入っている液晶をOSがどう扱うかが選択モードによって異なるということのようです。OSVR SDKを使って開発されたソフトであればDirectModeを使った方が勝手がよさそうに思いました。Extendedモードだと拡張されたモニター扱いになって、ゴーグルをかけてみると左右の目に液晶が半分ずつ映し出されて目が痛くなりました。これは何か設定でどうにかなるのでしょうか?

それぞれのモードの使い方はOSVR Serverを起動するときに渡す設定ファイルに従うようです。OSVR CentralのようなコントロールパネルやコマンドツールからDirectモードのオン・オフの切り替えもできるようです。

公開されているソフトを試してみる

購入直後は公式サイトで紹介されていたちょっとホラーなサンプルやゲーム性のない景観を楽しむだけのサンプルなどをいじっていました。今はSteamのようなサイトでOSVR対応をうたうタイトルがチラホラ見つかるようです。Steamの規格SteamVRがOSVRと互換性があるとのことなので開発が容易なのかもしれませんが、実行環境を作るのにひと手間あったりして、あんまりうまく試せていません。

いくつかのソフトを触ってみて、また、他のVR環境の感想を探っているうちにVRに特有の事項というのがみえてきました。

プレイ時の姿勢

イスに座ってプレイする座位、立ってプレイする立位、ものによっては寝っ転がってプレイできるように作られているものもあるようです。OSVRがトラッキングしてくれるのはゴーグルの位置だけなのですぐに気を付ける必要はなさそうですが、HTC VIVEのルームスケールのように部屋の中を歩き回ることを前提としたコンテンツの場合、ユーザーの姿勢だけではなくユーザーの移動についても考慮する必要があります。

部屋の広さ

これもOSVRではただちには問題にならなそうですが、ゲームの操作方法に手足の動きを監視してそれに連動するような方法を用いる場合、実際の部屋の広さとゴーグルの中の広さとが同じでないため、手近な壁や家具に被害が出ることがあるようです。

解像度とFPS

ゴーグルの解像度はハードウェアに備わっているもの以上は出せないのでどうしようもないのですが、やはり解像度が高い方が没入感が高まるそうです。よくみるとゴーグルの中の液晶のドットの網目がみえますしね。OSVRはその点、ハードウェアが自分で付け替えられるのが素晴らしいですね。そのうち、HDK2のパーツを別途購入したいです。
ゴーグルの中の液晶が1秒間に何回映像を更新できるかというのも没入感を高めるのに重要だそうです。OSVRの液晶はHDK2で秒間90フレームだそうです。
絵のきれいさと更新回数はGPUの能力に依存しているので、ここにお金をかけるべきとのことでした。最近のGPU事情がわからないのですが、PSVRがヒットしてPC用のVRも一緒に売れるようになったら、GPUの性能がここからまたグングン上がっていきそうな気がします。買う前によく調べたいところです。

雑感

OSVRで既存の面白いものに触れるのはなかなか難しいので、とっとと自分で何かを作り始めるのがよさそうです。

日記一覧