You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Raycast未命中鼠标正确位置问题求助

问题:SelectionManager触发UI偏移,仅鼠标在特定偏移位置生效

我觉得这是个简单问题,但需要帮忙排查——我的SelectionManager触发UI元素显示的事件,只有鼠标放在略微偏移的位置时才生效。

图片说明:蓝色的Rock5是要触发UI的目标对象,但实际UI在Rock6处显示;另一张图展示了需要把鼠标放在哪里才能激活UI,蓝色为目标对象

已尝试但无效的修复方法

  • 调整鼠标灵敏度
  • 将碰撞体从Mesh改为Box,无效果
  • 修改RayCast距离,无变化

SelectionManager代码

public GameObject interaction_Info_UI;
public GameObject interaction_item_origin;
public GameObject interaction_item_classification;
public GameObject interaction_item_description;
public GameObject interaction_item_closerlook;
public GameObject interaction_item_minerals;
public float distanceToHit = 5000;
Text interaction_text_name;
Text interaction_text_origin;

private void Start()
{
    interaction_text_name = interaction_Info_UI.GetComponent<Text>();
    interaction_text_origin = interaction_item_origin.GetComponent<Text>();
}

void Update()
{
    Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
    RaycastHit hit;
    if (Physics.Raycast(ray, out hit))
    {
        var selectionTransform = hit.transform;

        if (selectionTransform.GetComponent<InteractableObject>())
        {
            interaction_text_name.text = selectionTransform.GetComponent<InteractableObject>().GetItemName();
            interaction_Info_UI.SetActive(true);
            interaction_text_origin.text = selectionTransform.GetComponent<InteractableObject>().GetItemOrigin();
            interaction_item_origin.SetActive(true);
        }
        else 
        { 
            interaction_Info_UI.SetActive(false);
            interaction_item_origin.SetActive(false);
        }

    }
}

内容的提问来源于stack exchange,提问作者Anna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 01:11:08