所有__ GameObject__Unity 场景中的基础对象,可以表示角色、道具、风景、摄像机、路径点等。GameObject 的功能由所附的组件决定。更多信息
See in Glossary 都存在于单个的层上,但用于设置受 API 影响的层的 Unity API 不会直接使用层。相反,这些 API 会使用 layerMask。
层是标准整数,但 layerMask 则是位掩码格式的整数,其中 1 代表要包含的层,0 代表要排除的层。这意味着您可以将层传递给期望使用 layerMasks 的 API,而脚本仍会进行编译,因为层和 layerMask 使用的是相同的底层类型。但这时 API 调用不会产出预期的行为。
例如,假设要对第 9 层上的 GameObject 执行 RayCast,如果将 9 作为 layerMask 传入 Physics.Raycast 调用,那么 Unity 实际上会对 3 和 0 层上的 GameObject 执行光线投射。这是因为 9 的二进制表示形式为 00001001,如果将其解释为遮罩,则 1 将占用层 3 和 0 的位置。