スクリプトの整理

This commit is contained in:
oogushiyuuga
2026-06-29 17:23:26 +09:00
parent 4d1dc01b62
commit e8bdb0920d
6 changed files with 74 additions and 123 deletions

View File

@@ -1,11 +1,10 @@
using UnityEngine;
// World Space Canvas をプレイヤーの真正面に移動させ、開いている間はプレイヤーの視点に滑らかに追従させるスクリプト
public class VRUIDoorFaceFollow : MonoBehaviour
{
[SerializeField] private Transform vrCameraTransform;
[Header("配置・追従のパラメータ")]
//配置・追従のパラメータ
[SerializeField] private float forwardDistance = 0.5f;
[SerializeField] private float heightOffset = -0.1f;
[SerializeField] private float followSpeed = 5.0f;
@@ -22,15 +21,15 @@ public class VRUIDoorFaceFollow : MonoBehaviour
}
}
// 全体の時間が止まっている(Time.timeScale = 0間でも動作させるため、カメラ移動の後に実行される LateUpdate を使用します
// Time.timeScale = 0間でも動作させるため、カメラ移動の後に実行される LateUpdate を使用
private void LateUpdate()
{
if (vrCameraTransform == null) return;
// このオブジェクト(UI画面が有効化された最初のフレームの処理
// UI画面が有効化された最初のフレームの処理
if (!wasActiveLastFrame)
{
// 開いた瞬間は、プレイヤーの今の向きの完全な正面に瞬間移動させる(遅れてついてくるのを防ぐため)
// 開いた瞬間は、プレイヤーの今の向きの完全な正面に瞬間移動させる(遅れてついてくるのを防ぐため)
SetInitialPosition();
wasActiveLastFrame = true;
return;
@@ -46,7 +45,7 @@ public class VRUIDoorFaceFollow : MonoBehaviour
wasActiveLastFrame = false;
}
/// 画面が開いた瞬間に、プレイヤーの正面の正しい位置・向きに強制配置する
// 画面が開いた瞬間に、プレイヤーの正面の正しい位置・向きに強制配置する
private void SetInitialPosition()
{
// カメラの位置から、カメラが向いている正面方向に一定距離進んだ座標を計算
@@ -61,7 +60,7 @@ public class VRUIDoorFaceFollow : MonoBehaviour
transform.Rotate(0, 180, 0);
}
/// プレイヤーが首を動かしたり移動したりした際、画面を滑らかについてこさせる
// プレイヤーが首を動かしたり移動したりした際、画面を滑らかについてこさせる
private void SmoothFollowPlayer()
{
// 目的地(目標座標)の計算