版本:Unity 6 (6000.0)
语言:英语
层级遮罩简介
将层级添加到层级遮罩

设置层级遮罩

本页介绍如何正确设置层级遮罩,以便您可以在使用序列化层级遮罩属性的 API 调用中使用它。

使用序列化层级遮罩属性

在 Unity 编辑器中设置层级遮罩的最简单方法是创建一个使用 Unity 的 LayerMask 类的属性。如果该属性是 public 或使用 SerializeField 属性,Unity 在 检视面板一个 Unity 窗口,显示有关当前选定游戏对象、资源或项目设置的信息,允许您检查和编辑值。 更多信息
请参阅 术语表
中提供了一个界面,您可以使用它来选择层级遮罩代表的层级。

using UnityEngine;

public class LayerMaskExample : MonoBehaviour
{
    [SerializeField] private LayerMask layermask;
}

从层级转换

如果您想在运行时在脚本中将层级转换为层级遮罩,请使用 二进制左移运算符1 左移该层级。结果是一个表示单个层级的层级遮罩。

using UnityEngine;

public class LayerExample : MonoBehaviour
{
    [SerializeField] private int layer = 10;
    private int layerAsLayerMask;

    private void Start()
    {
        layerAsLayerMask = (1 << layer);
    }
}

其他资源

层级遮罩简介
将层级添加到层级遮罩