- LayerMask 层蒙版
- 示例:
- LayerMask.value 值
- LayerMask.GetMask 获取蒙版
- LayerMask.NameToLayer 名称转层
- LayerMask 隐式转换
- 示例:
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));}}
