Oculus Rift

提供: ArchWiki
2016年3月16日 (水) 21:10時点におけるKusakata (トーク | 投稿記録)による版 (同期)
ナビゲーションに移動 検索に移動

Oculus Rift は Oculus VR によって開発されているバーチャルリアリティヘッドマウントディスプレイです。

基本設定

ハードウェア

Oculus Rift のデバイスは HDMI によってセカンダリディスプレイとしてグラフィックカードに接続します。センサーとして使うには USB でも接続します。oculus-udevAUR パッケージが適当な udev ルールを設定します。

完全に利用するには inputvideo グループにユーザーを追加する必要があります。plugdev グループは必要なくなりました (モードは 0666 に設定されます)。

SDK

公式の Oculus Rift SDK はAUR のパッケージ oculus-rift-sdkAUR からインストールすることができます。CMake ビルドの対応などの修正が加えられたバージョンは oculus-rift-sdk-jherico-gitAUR でインストールすることが可能です。

パッケージは X セッションが起動した時に oculusd デーモンが実行されるように設定します。パッケージをインストールして X を再起動すれば自動的にバックグラウンドで実行されます。

ビデオモード

Rift を適切に機能させるには、特定のビデオモードを使う必要があります。特に、リフレッシュレートが低い通常のモニタと同じビデオモードを使っている場合、ゲームのリフレッシュレートも低くなってしまいます。

Rift をプライマリモニタにしないと、同期が正しく動作しません。

ノート: Having the display rotated adds an extra frame of latency, which makes it operate at the equivalent of Extended Mode on Windows. With the display unrotated, this extra frame of latency is removed and you get a much improved experience (equivalent of Direct Mode on Windows). Unfortunately only certain applications work correctly with this. You should test each to see if each application works correctly unrotated first.

xrandrift

AUR にある riftutilities-gitAUR[リンク切れ: アーカイブ: aur-mirror] というパッケージには xrandrift という名のスクリプトが含まれています。このスクリプトは xrandr を使って Rift を使うのに適したビデオモードを (引数に合わせて) 判断します。さらに、現在のビデオモードを記録して、プログラムが終了した後にスイッチバックします。

(対応しているアプリケーションで) 遅延をできるだけ減らすには、以下のようにプログラムを実行してください:

$ xrandrift OculusWorldDemo
ノート: You may experience tearing due to the selected video mode being too big to fit on the same framebuffer as your device. If you see an odd vertical tearing in the Rift, try running with -o instead.

Team Fortress 2 などの Source のゲームの場合 (プロパティの起動オプションで設定します):

$ xrandrift -e -p %command% -freq 75

60Hz で動作するゲームの場合:

$ xrandrift -s -p OculusWorldDemo

手動で xrandr を使う

Say our primary monitor is DVI-I-2, and DVI-I-3 is the Rift, and that 1152x864 is the highest mode that supports 75Hz. To use this:

 xrandr --output DVI-I-3 --primary --rotate left --mode 1080x1920 --rate 75 --auto --output DVI-I-2 --mode 1152x864 --rate 75 --auto --same-as DVI-I-3 --scale-from 1920x1080

Although the Rift SDK reccomends not rotating the secondary display, not doing so seems to cause issues with a number of programs. This command will set the primary monitor to have a scaled version of the entire display. If you prefer panning, change --scale-from to --panning.

 xrandr --output DVI-I-3 --primary --rotate left --mode 1080x1920 --rate 60 --auto --output DVI-I-2 --mode 1920x1080 --rate 60 --auto --same-as DVI-I-3 --scale-from 1920x1080

The above video modes can have some havoc on your display if you simply use xrandr --auto, as it'll still try to scale something. Use this to return to one monitor:

 xrandr --output DVI-I-2 --primary --auto --rotate normal --panning 1920x1080 --scale 1x1 --output DVI-I-3 --off

動作するアプリケーション

バーチャルリアリティ#対応ソフトウェアを参照。