Raycast统一击中了游戏对象

时间:2015-03-24 08:12:46

标签: c# unity3d onmouseover raycasting gameobject

我创建了一个统一的3d主菜单,每个按钮都是一个立方体。 我启用了用户通过光线投射按下按钮,问题是 我希望在光线投影在立方体上时更改立方体颜色,并在光线投影退出立方体时将其转换回原始颜色。 我正在使用c#,我读到了" OnMouseEnter"和" OnMouseExit" - 我没有使用鼠标,而是使用游戏控制器(Razer Hydra)。 如何在raycast中模拟OnMouseEnter和OnMouseExit?

1 个答案:

答案 0 :(得分:2)

根据我的理解,您希望在立方体上进行光线投射并更改其颜色并在光标或光线投射未击中时将其更改回来,我建议在没有mouseEnter和mouseExit的情况下使用此逻辑。

RaycastHit hit;

void Update () {

   Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
   if (Physics.Raycast(ray, out hit)) {
      if (hit.collider.tag == "cube"){
        //Change color here
        }

    }else {

    // Change back to prvious color.

} }