VRMFirstPerson¶

概要¶

VRMFirstPersonにはヘッドセットの位置指定とVRの可視設定という2種類の設定があります。

アプリケーション側が対応している場合のみ有効となる設定です。

Headset Position¶

VRMモデル内でVRヘッドセット(HMD)位置を指定する設定です。HMDとアバターの頭の追随を調整できます。

FirstPersonBone¶

一人称の際にHMDに追随させるボーンです。頭ボーンを指定してください。

FirstPersonOffset¶

追随する位置をFirstPersonBoneの位置から調整します。アバターの両目の間に調整してください。

VR Visibility Setting¶

VRアプリ向けにメッシュごとのカメラの可視設定を分ける設定です。VRアプリでは2種類のカメラが想定されます。
この一人称カメラで自身のアバターが見えた際に起きる不都合に対処するため、メッシュごとに可視性を設定出来るようになっています。

First-Person Camera¶

HMDに出力される映像

Third-Person Camera¶

HMD以外に出力される映像・配信用映像・鏡・マルチプレイでの他ユーザーのHMD

可視設定¶

Setting

First-Person Camera

Third-Person Camera

Note

Auto

△

△

初期設定。詳細は後述

Both

✅

✅

体・手・足など頭部から遠い部位を指定する

ThirdPersonOnly

✅

頭部・髪・帽子などを指定する

FirstPersonOnly

✅

設定項目自体が不要の可能性がある

不都合の例¶

  • 近平面で自分のアバターの輪切りが見える

  • アバターの髪が邪魔で何も見えない

  • 歯などの自身のアバターの中身が見えてしまう

Recommended Structure¶

アバター作成段階で頭と体にメッシュを分割することを推奨しています。

  • Specify ThirdPersonOnly for Head

  • Specify Both for Body

../../_images/firstperson.png

立体ちゃんは頭とそれ以外が分かれているので体をBoth、頭をThirdPersonOnlyに指定します。¶

../../_images/firstperson_runtime.png

The meshes with ThirdPersonOnly setting are not rendered in FirstPerson.¶

Autoの可視設定¶

可視設定がAutoの場合はインポート時にメッシュが Both と ThirdPersonOnly に自動分割されます。
分割されない場合はメッシュの全てが Both か ThirdPersonOnly になります。
UniVRMでは VRMFirstPerson.Setup() を呼び出します。 Autoによる自動分割は重めの処理になります。

分割基準¶

含まれる頂点が head か head の子孫のボーンのウェイトを持っているか

Reset Visibility Setting¶

FirstPerson は初期設定で Auto を指定しますが、エクスポートに失敗する場合はVRMFirstPerson をリセットすることで再設定することができます。 メッシュが増減するなどのアバターの構成が変わった場合に参照が Missing になったときなどがエクスポートに失敗する場合です。

リセット方法¶

VRM First Person (Script) インスペクタの右上の 歯車アイコン ⚙ で表示されるメニューから Reset を選択してください。

../../_images/firstperson_reset.gif

firstperson を reset¶