VRChatと現実世界のサイズ比率を合わせる
追記
バージョン2023.2.4より、アバタースケーリング機能が入りました。
記事内の「2」以降はアバタースケーリングで行うと良いでしょう。
不要な個所は横線で消しておきました。
====追記ココまで====
VRChatに入っていると、あらゆるものが現実のものよりも少し大きく感じる。これはVRChatが、アバターサイズによって世界のサイズが変わってみえる仕様による。小さいアバターでは、ネズミの視点のように世界が大きく、逆に大きなアバターでは巨人になったように世界が小さく描画される仕様。
ワールドを作ってVR内でデバッグしている時には、「この空き缶ちょっと大きいな」とかに気付きたい。その些細な違和感を得るためには現実世界とVRChat内の世界のサイズが一致していればいいんじゃないか。
その仮説を検証するため、現実世界とVRChat内のサイズを一致させるためのワークフローを作成したのが以下です。
2023.5.6追記
1.基準オブジェクトを置いたワールドを作成する。
現実サイズとVR内のサイズを合わせるための基準となるオブジェクトを置いたワールドを作成します。これは作業中に手で触れやすく、それなりに大きなものが良い。
1メートルくらいのものがあるとちょうど良さそう。
ボクは、いつも使っている机の天板をCubeで作成し、現実の机と同じ高さになるように置いた。
もし自分が使っている椅子のモデルデータが手に入るならそれを追加するのもいいだろう。
2.自分の身長と同じ基準アバターを用意する
自分の身長と同じ背の高さのアバターを用意する。
リアルのVewiPositionもメジャーなどで測ってみて一致させると良さそう。
ただし、ここで厳密に合わせても目線は一致しなかった。
(方法があれば教えてください)
目線の高さもサイズを感じるのに重要な要素なため「OVR Advanced Settings」をインストールして使えるようにしておく。https://store.steampowered.com/app/1009850/OVR_Advanced_Settings/
3.VRChat内のSetting>UserRealHeightSetting>で微調整をする。
用意したアバターで、用意したワールドに入る。
机の天板の前に立ち、OVRで天板の高さを合わせる。
おそらく向きが微妙に揃わないため、リスポーンやSteamVRの設定などを利用して正面リセットを行い、だいたいの向きを合わせる。
めんどうならUdonなどで回転する機構を作っても良いかもしれない。(リスポーンしたら正面になるように作っておくのが1番ラクです)VRChat内の「Setting」から「UserRealHeightSetting」を探し
アバタースケーリングの値を調整し、現実の机の天板と、VR内の机の天板が一致する値を探す。
実際に手を伸ばしリアル机の両端に触れた時に、VR内の天板の両端に触れていればだいたい合った事になる。
というか、だいたい合った瞬間に「ここだ」と理解できてしまう。
ボクの身長は170cmだけど、155cmまで下げて「ここだ」となったので数字はあまりアテにならなさそうだ。
これでざっくり現実とVR内のサイズが一致したはず。
目線の高さの問題が解決していないため、いちいちOVRで目線を合わせる必要があり若干めんどうなのでいずれ解決したい。
最初に書いた通りコレはデバッグ用のワークフローです。
「この空き缶ちょっと大きいな」とかにパッと気付きたい。
現実感を大事にしたいワールドなどを作っている時に便利だろうなと思って。
ただ、これによってVRChatの体験が良くなるとか、サイズ比率が正しい=良いだとかそういうことはない。
キャリブレーション後にいろんなワールドをめぐるのも体験としてはちょっと面白いけどね。
ボク個人は最近は小さなアバター(ちまこぞく)を着ていて、世界が大きいことの良さをかみしめています。
以上です。
サポートするとレーズンがコーヒーを飲める!