まっつん◆SW1/SWF8io が再起動するようです

ブログを使って日々勉強するよ!

【ゆるぼ】VRHMDで現実空間と同じ距離感・サイズ感を「正確に」再現するには?(未解決)

(この質問どこにポストしようかなーと悩んだけどブログに投稿)

 

例えば、建築の分野で「一軒家を実際に建てる前に広さがどんなもんかVRで体験したい」という(実際にありそうな)案件があったとします。

ところが、六畳間を作って部屋の中央あたりでプレビューして見回してみると、何か違う・・現実の六畳間よりちょっと狭く(または広く)感じるような気がする・・・となったとします。

この「何か違う」の原因ですが、以下が考えられそうです。

 

◆VRプレビューの『試着室の鏡』問題*1の原因リスト

  1. ソフトウェア内の建物の大きさを間違えて、
    実際の見取り図と違う大きさで作ってしまったため
  2. ソフト内でのカメラの高さが、実際の目の高さと異なるため
  3. ソフト内のカメラの画角が人間の眼球の画角と異なるため
  4. ソフト側でレンダリングされた左目用と右目用の歪み画像が、HMDのレンズに合わないゆがみ方のため*2
  5. HMDの瞳孔間距離の調節が、実際の目の位置と異なるため
  6. 体験者のHMD自体の装着感が甘く、HMDのレンズと眼球との距離が最適な位置とは異なるため

 

で。これらの問題をすべてクリアしてプレビューしてみて「うん!実際の6畳間と同じくらいの距離感、サイズ感だ!」と感じたとしても、微調整とプレビューを何度も繰り返した結果、実際は異なるサイズであるにも関わらず、合ってると思い込んでしまってるだけの可能性があります。

特にVRHMDは「クロスモーダル現象」を引き起こすほど脳を騙すことに長けた技術なので、今回の「一軒家の実際の広さを確認する」という、正確さが求められるミッションでは、感覚に頼るのはあまり良くないかなと思っています。

f:id:n_mattun:20160908031455p:plain

(画像はイメージ。ちゃんと日本橋ヨヲコ先生のツイートからいただきました)

とは言え、現実の空間とVR空間が同じ距離感、サイズ感であることを確実に保証する方法ってあるんでしょうか?思いつく限りだと・・・

 

◆現実の部屋と、現実の部屋を同じ寸法で再現したVR空間が「同じ距離感で、同じサイズで見えている」ことを確認する(測定する)方法は?

  1. viveのトラッキングセンサー2つと、viveコン2つを部屋の隅と天井にくっつけて、
    それがVR空間内の部屋の隅、天井にくっついていれば、同じ距離、サイズ感である(Riftでもセンサーの位置は多分VR内で表示できたと思うので、あとはTouchさえあれば同じことは可能)
  2. VRHMDに眼球と同じ画角のカメラをくっつけて、そのカメラの映像をVR空間に重ねて、VR空間と現実空間の部屋の壁がピッタリ重なっていれば、同じ距離、サイズ感である(viveのフロントカメラが眼球と同じ画角であれば代用できる?)

あたりが正解なのかな?と思っています。

ただし1は、トラッキングセンサーの精度が現実と同じである、という保証が予めされていることが前提です(Lighthouseはミリ単位で正確にトラッキング・・ってどっかで言ってた気がするからここは保証されてると考えていいのかなぁ。誰かわかる人教えてください)。

 

◆言いたいことまとめ

  • 「試着室ミラー問題」の原因リストアップした項目の他に、現実の空間とVR空間の距離感、サイズ感を合わせるために必要なことや、実際に試したことや思いついたこと、参考文献などあれば@n_mattunにぜひ教えてくださいおなしゃっす!
  • 現実の空間とVR空間が同じ距離感、サイズ感であることを確認する方法で実際に試したことや思いついたこと、参考文献などあればぜひ@n_mattunに教えてくださいオンシャッス!
  • 今回のお題である「一軒家を実際に建てる前に広さを確認する」案件では『この間取りだと本当は狭いんだけどVR確認では気付かない程度に広く見せて成約に繋げてしまえ・・・!』と、本当に試着室の鏡のように騙せてしまうので、距離感、サイズ感が正確であることが重要なケースにも関わらず再現性が低い場合は、必ず体験者に「あくまでイメージですよ!」みたいな形で事前説明をしよう!

*1:デパートの洋服店の試着室の鏡が湾曲していて、試着室で自分と服が細く見えて似合うように見えたから買ったけど、家の鏡や実際に他人から見たら理想と違うじゃん!ってなるらしい都市伝説?になぞらえて勝手に命名

*2:例えばOculus向けにレンダリングしてもRift DK2とRift CV1とGearVRではレンズが違うし、OpenVR向けにレンダリングしても、HTC viveとOSVRとFOVEではレンズが違う