VR で物が大きく見えたり小さく見えたりするわけ

様々な VR HMD やコンテンツを体験していると、本来リアルなシーンなのに人や風景が人形のように小さく見えることがあります。反対に、周囲に巨人が動き回っているように見える場合もあります。その原因は視差の違いにあります。

目と目の間隔は個人差があります。そのため、同じコンテンツでも視差による感じ方は人によって異なってきます。

● 視差と距離感

普段見ている景色は遠くにあるものほど視差が小さくなります。よって VR 空間内でも視差が現実よりも小さい場合は、物体が遠くにあるように感じます。

その極端な例が視差が無いモノラルな 360度写真や 360度動画です。VR で巨大な人が周りに立っているかのような 360度写真を何度か見たことがあるのではないでしょうか。

視差が無いということは現実だと極めて遠くにある場合に相当します。遠くにあるはずなのに、近くにある場合と変わらない大きさで見えているのだから「これは非常に巨大なものであるに違いない」と脳が勘違いしてしまうわけです。

逆に視差が大きいときは、より手前にある場合に相当します。近くにあるのに遠くにあるときと同じ大きさに見えているのだから、とても小さいものがそこにあるのだと感じてしまいます。

● 目と目の間隔 IPD

目と目の間隔 (IPD = 瞳孔間距離) は見え方に影響を与えます。個人差があるため、多くの VR System では目の間の距離を調節する仕組みが備わっています。IPD には 2種類あります。

物理 IPD HMD のレンズやモニタ間の距離
レンダリング IPD 仮想空間内に配置した、両目のカメラ間の距離

ハイエンド系の VR HMD では、直接物理 IPD を調節するための仕組みが用意されているものがあります。HTC Vive では右下にダイヤルが付いており、Oculus Rift でもスライドスイッチで調節することが可能です。この調節した値は API から読み取ることが可能で、レンダリング IPD にそのまま反映されます。

レンズを見やすい位置に調節できる上に、レンダリング IPD にも自動的に反映されるため手間がかかりません。逆に見かけの大きさに違和感があっても、物理 IPD とレンダリング IPD を意図的にずらすことができなくなっています。

物理 IPD の調節ができない機種でも、ソフトウエア的にレンダリング IPD の設定ができるものがあります。PS4 の PSVR では、設定の中に目と目の距離を測定するための機能が用意されています。Windows MR ではもっと単純で、設定画面の中で IPD を直接数値入力することができます。

Device 物理 IPD 調節 レンダリング IPD
HTC Vive ダイヤル 物理 IPD に連動
Oculus Rift スライドスイッチ 物理 IPD に連動
PSVR なし 目と目の距離測定機能
Windwos MR なし 設定画面で数値入力

●大きさの違和感を解消するための調節

VR 空間内で人や物の大きさが大きすぎたり小さすぎると感じる場合は、現実と IPD の値がずれていると考えられます。個人差があるので、他の人にはちょうどよく見える場合も自分には小さかったり大きく感じたりする場合があります。

大きく見える場合は視差が小さいので、レンダリング IPD を増やします。もし小さく見える場合は視差が大きいので、レンダリング IPD を減らす方向に調節します。

ただし、HTC Vive や Oculus Rift のように物理 IPD とレンダリング IPD が連動している場合はこの調節ができません。物理 IPD はレンズを通して映像が一番見えやすい位置に調節すべきで、レンダリング IPD だけ意図的にずらすことができないからです。

PSVR は数値入力できないので、目と目の距離を測定するツール上で調節することになります。少々手間がかかるのですが、「設定 → 周辺機器 → PlayStation VR → 目と目の距離を測定する」で写真から目の中心を割り出すときに、瞳の中心から外してあえて狭くしたり、広げることで調節ができます。

Device レンダリング IPD だけの微調整
HTC Vive なし
Oculus Rift なし
PSVR 目と目の距離を測定するツールで、間隔をずらす
Windwos MR 設定画面で数値入力

個人差があると思いますが、自分の場合 IPD をきちんと設定しても Oculus Rift は Vive よりもわずかに大きく見える傾向がありました。ただしどちらも比較的違和感が無い範囲での違いです。PSVR は全体的に小さく見えていました。Windows MR は一部の HMD しか試していませんが違和感ありませんでした。

なお、このようなレンダリング IPD 調節が有効なのはあくまで、ゲームのように 3D でリアルタイムレンダリングを行っている場合だけです。プリレンダリングされた動画や、実写の 360度動画や 360度写真は、撮影時にカメラ間の距離が決まってしまいます。コンテンツに依存するためあとから IPD を変更することができません。

ポジショントラッキング対応の HMD でも、ムービーでは頭の位置を水平に動かすことができないのと同じです。個人差があることを踏まえても、より良い VR 体験には リアルタイム 3D は欠かせない要素となっていると言えるでしょう。

関連エントリ
Oculus Go は VR ができる新しい携帯ゲーム機
Oculus Go と VR デバイスの種類