【拡散希望】VRHMDのVR酔い防止カメラ『Grid』の紹介【アンケート集計中】
タイトルちょっと宣伝気味でw
前の記事「Oculus+FPS視点のカメラ左右操作時のVR酔い対策を思いついて試したらかなり良かった件」以降、より詳細にVR酔いの原因と解決策を自分なりに調べたところ、前記事のようなTPS視点への遷移ではなく、一人称視点のままでVR酔いを防止できるカメラが作れたっぽいので紹介します。
(実際に体験できるソフトも本記事の最後に置いてあります)
体験用ソフトと合わせて、このカメラの効果の確認のためのアンケートフォームも用意しています。アンケートの結果はVR界隈の共有知見として後日公開を行う予定でいますので、みなさんぜひ体験&アンケートにご協力ください!
※ちなみに、いくつかのVR勉強会にこのカメラを持ち込んで何名かのVRエンジニアに口頭で感想をいただいてますが、かなり好評です。
既知のVR酔い対策の概要と、制作に至った背景
カメラの回転運動を伴うVRコンテンツを作る上で発生する「VR酔い」について、現在有効とされている主な対策は
- カメラ(キャラクター)の移動を一方方向に制限する
- カメラの回転を遅くする
- ポインティング先にテレポートする
- カメラの直前面に固定物となるコックピット、黒メッシュフレーム等を配置する
- アバターとカメラを切り離し、神視点にする
- 現実側でプレイヤーがカメラと同じ方向に回り、視覚と体感を一致させる
などがありますが、これらはいずれも従来の一人称視点コンテンツのカメラ操作、移動方法とは異なるため、同種の操作感を下敷きとした、VR内で自由に動き回るコンテンツが事実上作れないという非常に大きな制約があります。
今回作ったVR酔い防止カメラ「Grid」は、その制約をとっぱらうために、可能な限り従来のカメラ操作入力と同様の操作感になることを意識しつつ、効率的にVR酔いを防ぐことを目指して作られました。
VR酔い防止カメラ「Grid」の基本説明
カメラ操作開始時に、カメラを囲うように球形のグリッドが表示され、カメラ操作中はカメラの代わりにグリッドが回転(経度線が描かれた地球儀の中心にカメラがあるようなイメージです)。回転しているグリッドの線が中央に固定表示された赤線に触れた時に、グリッドの間隔と同じ角度ぶん、カメラが瞬時に回転します。
酔いを防ぐために考慮したこと
- 加速度(だんだん速く/だんだん遅く)を伴ったカメラ移動は酔いやすい(OculusベストプラクティスガイドP25あたりに書いてあります)ので、なるべく等速(同じ速度)での移動や、瞬間移動などを使うようにする
- 「予想外のカメラの動き」も酔いを引き起こす原因のひとつなので、カメラが動く時は予めユーザーが動くことを予測できるようにする
- カメラ回転中、移り変わる景色に意識が向かないよう、景色以外に注視ができるオブジェクトを用意すること
Gridが酔わない理由
- 景色以外に注視するオブジェクトとして、
カメラ操作中は視線中央に赤線が固定表示される(ので酔わない) - グリッドが赤線に触れる様子が見えるので、
カメラ移動発生の瞬間を確実に把握できる(ので酔わない) - 移動発生から次の移動発生までのタイミングは基本的には等間隔になるので、常時、次の移動発生のタイミングを的確に予測できる(ので酔わない)
- カメラ(景色)の回転は瞬間的に行われる(ので酔わない)
- グリッドの形状そのものが、既知のVR酔い対策案である
『カメラ前面に黒メッシュを配置しておくと酔い防止になる』
と似たような形をしている(ので酔いにくさに貢献しているハズ)
※ちなみにこれは開発時に意図したものではなく、まったくの偶然でしたw - 「正面を向いてカメラを左右に回す」よりも、人によっては「上を向いてカメラを左右に回す」方が非常に酔いを引き起こしやすいのですが、各グリッドは球の正面よりも球の天面の方が密集している(ので上向き回転でも酔いにくい)
※ちなみにこれも開発時に意図したものではなく、偶然こうなりましたw
Gridの他のメリット
- 最初に書いたとおり従来の一人称視点ゲームと同じカメラ操作感になるので、酔いを防ぐ目的でゲームシステム自体に制限をかけたり、特殊な操作方法をユーザーに強要しなくて済む
- 一人称視点だけではなく、TPS視点のゲームへも応用可能
(神視点カメラ側の周囲にグリッドを表示し、アバター周辺は何もなし) - グリッドの目盛り間隔はスクリプトで可変指定できるので、
個々のユーザーの体調や酔いにくさに応じて柔軟に調整、対応ができる - グリッドの目盛り間隔を少しづつ変えていくことにより、VR酔いを段階的に克服することができる可能性がある(!)
問題点
- カメラ操作中、視界にずっとグリッドがパタパタ回転してるのがやや邪魔くさい(ただこの点は、カメラの移動が発生するタイミングを操作している本人が知覚した後であれば、グリッドを消しても大丈夫なんじゃないかなという気もしています。あとコンテンツ自体に夢中になってると、わりと気になりません)
- 現実ではあり得ない景色の回転になるため、カメラ回転中はVR空間への没入感が損なわれる
まとめ
VRコンテンツを作る以上、VR空間に対する没入感は非常に重要です。
が、VRHMDが今後様々な分野への応用が期待される中で、コンテンツの種類、目的によっては『操作への不満や酔いへの不快感が解決できるのであれば、没入する快感を多少犠牲にしてもそちらを選ぶ』というケースも出てくると思いますので、そのようなケースではGridが非常に有効な選択肢になり得るのではないかと考えています。
そしてここまで、GridがVR酔いに効くことを前提に話を進めてきていますが、OculusベストプラクティクスガイドのP17あたりに「アプリ開発者自身のVR酔い防止経験談はアテにしてはいけない(意訳)」と書いてある通り、このカメラが本当に効果があるかどうかは、他の方の体験&感想があって初めて立証されます。
ので、ぜひ皆さん体験+アンケートへのご協力、よろしくお願いいたします!
※ちなみに「空を飛びながら周囲を見回し、目的地に飛んで行く」という、VR酔い上等なコンテンツを作ってる自分にとって、Gridが酔い解決の大きなきっかけになりそうで非常にホクホクしています。実戦投入にはもう少しカスタマイズが必要そうですが。
サンプルプログラム本体とアンケートフォーム
VR酔い防止カメラ「Grid」体験アンケート(Googleフォーム)
追記(2016/10/29)
Gridの成果を『「予測と体感の不一致」説によるVR酔いの説明と対策方法」』
というスライド内で発表しました。
参考資料