//下面代码演示了 射线只与地面层碰撞检测
void Test7391()
{
Ray ray = Camera. main. ScreenPointToRay( Input. mousePosition); //射线,从摄像机到鼠标位置的一条射线
RaycastHit raycastHit; //碰撞体信息
int groundLayer = LayerMask.GetMask("Ground");//要碰撞的层,得到地面layer层级
// if(Physics.Raycast(射线,碰撞体信息,射线长度多少米,要检测的碰撞层))
if(Physics.Raycast(ray,out raycastHit,81f,1<< groundLayer))
{
//如果碰撞上了.
}
//如果不写 要检测的碰撞层 参数,那么就默认检测所有层
//射线只排除地面层~(1<<groundLayer)) //射线只检测地面和敌人层:假设地面的层级是5,敌人的层级是6,代码1 << 5 | 1 << 6) //射线只排除地面和敌人层~(1 << 5 | 1 << 6)) }