LayerMask 层蒙版
layermask允许你在检视面板中显示layermask弹出菜单。
变量 | 说明 |
---|---|
value | 转换层蒙版的值为整数值。 |
静态方法 | 说明 |
---|---|
GetMask | 无论是内置的层名称集或是由用户在“标签和层管理器”中定义的层,返回与它们相等的层蒙版。 |
LayerToName | 给定一个层数,返回内置的或在Tags and Layers中定义的层名称。 |
NameToLayer | 给定一个层名称,返回内置的或在Tags and Layers manager中定义的层索引。 |
示例:
LayerMask.value 值
转换层蒙版的值为整数值。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public LayerMask mask = -1;
void Update() {
if (Physics.Raycast(transform.position, transform.forward, 100, mask.value))
Debug.Log("Hit something");
}
}
LayerMask.GetMask 获取蒙版
public static int GetMask(params string[] layerNames);
转换为层蒙版的层名称列表。返回从层名称创建的层蒙版的int值。
无论是内置的层名称集或是由用户在“标签和层管理器”中定义的层,返回与它们相等的层蒙版。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Example() {
Debug.Log(LayerMask.GetMask("UserLayerA", "UserLayerB"));
}
}
LayerMask.NameToLayer 名称转层
给定一个层名称,返回内置的或在Tags and Layers manager中定义的层索引。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Example() {
Debug.Log(LayerMask.NameToLayer("TransparentFX"));
}
}
LayerMask 隐式转换
隐式转换整数为层蒙版。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public int i = 0;
public LayerMask la;
void Example() {
la = i;
Debug.Log(LayerMask.LayerToName(la));
}
}