diff --git a/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs b/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs index 6d1f22b..8722ed9 100644 --- a/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs +++ b/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs @@ -14,10 +14,12 @@ public class ChanraoTuibuHandler : MonoBehaviour { _meshRenderer = GetComponent(); if (_meshRenderer == null) _meshRenderer = GetComponentInChildren(); - if (_meshRenderer != null) _meshRenderer.enabled = false; - // 隐藏所有子级 Renderer(确保模型不可见) - var allRends = GetComponentsInChildren(); + // 隐藏所有子级 Renderer(包括 inactive 子级,确保模型不可见) + var allRends = GetComponentsInChildren(true); foreach (var r in allRends) r.enabled = false; + // 确保有大号可点击 collider + var col = GetComponent(); + if (col == null) { var sc = gameObject.AddComponent(); sc.radius = 0.5f; } CreateBlueOutline(); StopAllCoroutines(); StartCoroutine(BlinkOutline()); diff --git a/Assets/Scripts/Interaction/PingClickHandler.cs b/Assets/Scripts/Interaction/PingClickHandler.cs index 5a657d4..cffa947 100644 --- a/Assets/Scripts/Interaction/PingClickHandler.cs +++ b/Assets/Scripts/Interaction/PingClickHandler.cs @@ -29,10 +29,12 @@ public class PingClickHandler : MonoBehaviour { _meshRenderer = GetComponent(); if (_meshRenderer == null) _meshRenderer = GetComponentInChildren(); - if (_meshRenderer != null) _meshRenderer.enabled = false; - // 隐藏所有子级 Renderer(确保模型不可见) - var allRends = GetComponentsInChildren(); + // 隐藏所有子级 Renderer(包括 inactive 子级) + var allRends = GetComponentsInChildren(true); foreach (var r in allRends) r.enabled = false; + // 确保有大号可点击 collider + var col = GetComponent(); + if (col == null) { var sc = gameObject.AddComponent(); sc.radius = 0.5f; } CreateBlueOutline(); _clickedOnce = false; StopAllCoroutines();