if (Physics.Raycast(transform.position, transform.forward,out hit, 100000, 1 << 1|1<<2))
{
DrawLine(transform.position, hit.point, Color.green);
Debug.Log(66666);
}
Physics.Raycast 的最后一个参数 是 int layer 这个是说检测哪一层级

是位运算符 1<< 2 这样表示只检测第二层 如果要表示不检测某一层 则需要 在前面加上~这个符号,就是键盘tab键上面的符号 ~1<<2 就表示不检测第二层
Unity 射线检测层的代码
最新推荐文章于 2025-10-22 13:45:07 发布
本文详细解析了Unity中Physics.Raycast方法的使用技巧,重点介绍了如何通过位运算符指定碰撞检测的层级,包括只检测特定层级及排除某一层级的方法。
512

被折叠的 条评论
为什么被折叠?



