【Unity 3D学习】获取鼠标点击所对应的GameObject

刚开始学习Unity 3D,新手遇到的坑都是泪对自由的抗争。直入主题~

首先,为GameObject需要添加组件“Box Collider”。

然后,在脚本中的Update方法中添加如下代码。

if(Input.GetMouseButton(0)) { 
    Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);  //camare2D.ScreenPointToRay (Input.mousePosition);
    RaycastHit hit ;    
    if (Physics.Raycast (ray, out hit)) { 
        print("hit:"+hit.collider.gameObject.name);
    }
}

最后,记录遇到的坑~~

如果是获取2D UI中的GameObject,则需要使用上面注释的代码。也就是说,需要拿到GameObject所对应的Camera,这时候才能保证拿到的ray变量是正确的,fighting!


你可能感兴趣的:(Unity,3D开发)