概要

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の場合はインポート時にメッシュが BothThirdPersonOnly に自動分割されます。
分割されない場合はメッシュの全てが BothThirdPersonOnly になります。
UniVRMでは VRMFirstPerson.Setup() を呼び出します。 Autoによる自動分割は重めの処理になります。

分割基準

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

Reset Visibility Setting

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

リセット方法

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

../../_images/firstperson_reset.gif

firstperson を reset