From e75868832fdb90e9824be7983ea1be1b3b5eda8f Mon Sep 17 00:00:00 2001 From: JA <1323160571@qq.com> Date: Thu, 2 Jul 2026 03:05:32 +0800 Subject: [PATCH] 1 --- unity/Assets/Light/scripts/LightSource.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/unity/Assets/Light/scripts/LightSource.cs b/unity/Assets/Light/scripts/LightSource.cs index b65410c..8bb2da7 100644 --- a/unity/Assets/Light/scripts/LightSource.cs +++ b/unity/Assets/Light/scripts/LightSource.cs @@ -14,6 +14,10 @@ namespace IndianOceanAssets.Engine2_5D [SerializeField] private float intensity = 1f; // 光照强度 (0~1) [SerializeField] private bool registerOnStart = true; + [Header("位置调整")] + [Tooltip("光源相对于物体(或 followTarget)的位置偏移")] + [SerializeField] private Vector3 offset; + [Header("可选:目标跟随(留空则跟随自身)")] [SerializeField] private Transform followTarget; @@ -45,12 +49,13 @@ namespace IndianOceanAssets.Engine2_5D } /// - /// 返回光源在世界坐标的位置(XZ 平面) + /// 返回光源在世界坐标的位置(XZ 平面),含 offset 偏移 /// public Vector2 GetWorldPositionXZ() { Transform t = followTarget != null ? followTarget : transform; - return new Vector2(t.position.x, t.position.z); + Vector3 pos = t.position + offset; + return new Vector2(pos.x, pos.z); } public float Radius => radius; @@ -103,4 +108,4 @@ namespace IndianOceanAssets.Engine2_5D LightMaskSystem.Instance.UnregisterLight(this); } } -} \ No newline at end of file +}