问题描述:鼠标点击某个物体,判断该物体是否被点击。
问题解决:
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。