刚开始学习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!