包含此页的版本:
不含此页的版本:
每游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表存在于单个层上,但允许您设置 API 影响哪些层的 Unity API 不直接使用层。相反,他们使用 layerMasks。
一个层Unity 中的层可用于有选择地选择游戏对象组加入或退出某些进程或计算。这包括相机渲染、光照、物理碰撞或您自己的代码中的自定义计算。更多信息
请参阅术语表是一个标准整数,但 layerMask 是一个整数,格式化为位掩码,其中每个1表示要包含的图层,并且每个0表示要排除的图层。这意味着您可以将图层传递给需要 layerMasks 的 API,并且脚本仍将编译,因为图层和 layerMask 使用相同的基础类型。但是,API 调用不会产生预期的行为。
例如,如果要对第 9 层上的游戏对象执行 RayCast,则将9作为 layerMask 的 Physics.Raycast 调用,Unity 实际上会对图层上的游戏对象执行光线投射3和0.这是因为 9 的二进制表示是00001001如果您将其解释为掩码,则1s 代替了图层3和0.