理解例子即可:
if(Input.GetMouseButtonDown(0))//按下鼠标
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//从屏幕鼠标点击的位置发射射线
RayCasetHit hit;//设置一个射线碰撞结果变量
bool isCollider = Physics.RayCast(ray,out hit,1000,LayerMask.GetMask("目标layour层,创建layour层的方法后续给出"));
//传入射线、射线碰撞结果、射线距离、射线碰撞目标层
//有多种重载的方法,具体看官方文档(help -> unity manual进入)
if(isCollider)
{
//TODO碰撞成功的操作
}
}
设置碰撞层:
在unity的Inspect面板中,找到layour,点击,add layour,命名创建一个新的layour层,把需要成为此layour层的游戏对象的layour选中为刚才新创建的layour层即可。