Unity
VR

VRでサブカメラを実装する(備忘)


はじめに

VR体験者の目線の映像ではなく、体験者を俯瞰した映像(所謂サブカメラ)を作るときの手順を備忘として書きます。

HTC VIVEを使用しています。

画像右上がサブカメラ。

subcamera_001.JPG


サブカメラを用意する

ヒエラルキーで右クリック > Camera を選択します。

インスペクターから、以下を設定します。

Viewport Rect : X 0.6 Y 0.6 W 0.4 H 0.4

Depth : 1

Target Eye : None (Main Display)

subcamera_002.JPG

Viewport Rect は、カメラの表示位置(X, Y)と表示サイズ(W, H)を設定します。

Depth は深度という意味らしく、初期値が 0 です。

ここでの深度とは、「値が大きいほど手前に描画する」 「値が小さいほど奥に描画する」 ということを意味します。

メインカメラのDepthも初期値0のため、

Unityで新規プロジェクトを作成したときにヒエラルキーに配置されている Main Camera の Depth 値は -1 なので、サブカメラの Depth 値は 0 で良い気がしますが、Unityエディタ実行時サブカメラが表示されませんでした。しかし、Depth 値を 1 に設定することでサブカメラを描画できたので、今回は設定値 1 としています。

Target Eye の初期値はSteam VR pluginをインポートしている場合 Both ですが、サブカメラの内容は今回、HMD両眼のディスプレイに表示させる必要がないため、None (Main Display)を設定します。


実行結果

メインカメラ(HMD)を動かしても、サブカメラは固定されたまま表示されています。

また、メインカメラ(HMD)にはサブカメラの内容は表示されていません。

20190612_subcamera.gif