问题描述:鼠标点击某个物体,判断该物体是否被点击。

问题解决:

1) 需要用到一个可视对象GameObject go,需要用到一个碰撞器,此处用Box Collider,一个自定义组件Controller.cs,用来检测鼠标是否点击。

2) 在go中添加Box Collider组件,可以不用设置isTrigger,根据自己需求而定。

3) 在go中添加Controller组件。

4) 设置go的标签Tag为自定义标签,此处设置为”myCube”。

5)  Controller组件代码如下:

void Update()
    {
        if(Input.GetButtonDown("Fire1"))
        {
            
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hitInfo;
            if(Physics.Raycast(ray,out hitInfo))
            {
                GameObject gameObj = hitInfo.transform.gameObject;
                if(gameObj.transform.tag == "myCube")
                {
                    Debug.Log("做你想做的任何事!");
                }
            }
        }
}

6)    运行后,即可得到鼠标点击go,控制台输出Debug.Log。