Skip to content

VR Follow HUD

mimyquality edited this page Nov 30, 2025 · 21 revisions

概要

VR において、視界にピッタリ張り付く HUD(Head Up Display、いわゆるオーバーレイ表示)は VR 酔いに繋がると言われていました。
このギミックはその理論を元に、HUD をビューポイントの移動に遅延して追従させる UDON ギミックです。
パラメーターで位置と回転を別々に設定でき、遅延させずに同期させる事も可能です。
また、追従箇所を指定する事ができるので、HUD 以外の用途にも応用できます。

一般的な HMD は焦点距離がビューポイントから前方に2m程度で設定してあるそうです。
本ギミックに添付のサンプル Prefab は、ビューポイントから2m前方に Render ModeWorld Space の Canvas が表示されるよう調整してあります。
なお、そのままだと2m以内にあるオブジェクトにUIが隠れてしまうので、必要な人は別途対策してください。
参考リンク :
TextMeshPro を常に最前面に表示させる
UIがオブジェクトに隠れてしまう時の対処法

導入手順

導入手順

パッケージ内容

  • 主観視点または VRCカメラに遅延追従するギミック
  • トラッキング部位に遅延追従するギミック

使い方

Packages > Fukuro Udon > Samples > VRFollowHUD にサンプル Prefab が入っています。
CameraFollowTracker_sample はプレイヤーの主観視点(または VRCカメラ)に遅延追従する Canvas が組み込まれています。通常はこちらをお使いください。
TrackingFollowTracker_sample はプレイヤーの指定したトラッキング部位(初期値は頭)に遅延追従する旧式です。
プレハブを Hierarchy に置くだけで、このプレハブがプレイヤーの主観視点に遅延追従するようになっています。

遅延追従が不要な場合は、ピッタリ追従する LocalPlayerCameraTracker, LocalPlayerTrackingTracker もあります。遅延処理が無い分軽量です。
このコンポーネントを「Add Component」から直接アタッチしてください。

Important

表示したい内容は各自で用意してください。

パラメーターについて

  • Tracking Point : 追従箇所を指定します。ScreenCamera(主観視点)/PhotoCamera(VRCカメラ) から選択できます
  • Tracking Point : 追従箇所を指定します。Head/Right Hand/Left Hand/Origin(ルームスケールの原点)/AvatarRoot から選択できます
  • Enable Position : 有効にすると、位置がTracking Pointに向かって追従するようになります。
  • Enable Rotation : 有効にすると、向きがTracking Pointに向かって追従するようになります。
  • VR Only : 有効にすると、デスクトップモードの時のみ位置と回転が遅延せずに追従します
  • Sync Potision : 有効にすると、位置が遅延せずに追従します
  • Follow Move Speed : 追いつく移動速度
  • Distance Range : ここで設定した値以上離れなくなります(meter)
  • Move Threshold : この値以上離れるまで追従しなくなります(meter)
  • Sync Rotation : 有効にすると、回転が遅延せずに同期します
  • Follow Rotate Speed : 追いつく回転速度
  • Angle Range : ここで設定した値以上に角度が開いていると、回転速度が加速します
  • Rotate Threshold : この値以上角度が開くまで追従しなくなります
  • Lock Roll : 有効にすると、Z軸回転のみ遅延せずに同期します
  • Lock Pitch : 有効にすると、X軸回転のみ遅延せずに同期します
  • Lock Yaw : 有効にすると、Y軸回転のみ遅延せずに同期します

サンプル

以下のワールドにサンプルを設置しています。
https://vrchat.com/home/world/wrld_4b7ed36e-c436-409f-9f87-8a6f4c80e79b

Clone this wiki locally