Javascript 为什么赢了';t脚本在3d文本上工作?(单位5)

Javascript 为什么赢了';t脚本在3d文本上工作?(单位5),javascript,unity3d,colors,unity5,Javascript,Unity3d,Colors,Unity5,这是我的代码: function OnMouseEnter() { GetComponent(Renderer).material.color = Color.grey; } function OnMouseExit() { GetComponent(Renderer).material.color = Color.white; } 当我将其分配给一个常规的游戏对象(如立方体)时,效果很好,当我用鼠标悬停在它上面时,它会变成灰色,当我把它拿走时,它会变成白色。但当我尝试使用3d

这是我的代码:

function OnMouseEnter()
{
    GetComponent(Renderer).material.color = Color.grey;
}
function OnMouseExit()
{
    GetComponent(Renderer).material.color = Color.white;
}

当我将其分配给一个常规的游戏对象(如立方体)时,效果很好,当我用鼠标悬停在它上面时,它会变成灰色,当我把它拿走时,它会变成白色。但当我尝试使用3d文本时,无论我做什么,都不会发生任何事情。我做错了什么,如何解决这个问题?

OnMouseCenter和OnMouseExit需要将碰撞器连接到对象才能工作(因为它使用光线投射)。默认情况下,立方体等游戏对象附带碰撞器,而3D文本不附带碰撞器。只需将一些碰撞器附加到文本(从Inspector窗口:Add Component=>Box Collider),它就可以工作。

是否将碰撞器附加到游戏对象?若我记得很清楚,那个么只有在对象上有碰撞器时,鼠标事件才有效。