Version: Unity 6.0 (6000.0)
语言 : 中文
从 layerMask 中删除层
基于文本的场景文件

标签

标签是可分配给一个或多个__游戏对象__的参考词。例如,可为玩家控制的角色定义“Player”标签,并为非玩家控制的角色定义“Enemy”标签。还可以使用“Collectable”标签定义玩家可在场景中收集的物品。可以使用任何需要的词作为标签。甚至可以使用短语,但这种情况下可能需要增加检视面板 (Inspector) 的宽度才能看到标签的完整名称。一个游戏对象只能分配有一个标签。

标签有助于识别游戏对象以便于编写脚本。通过使用标签,不需要通过拖放方式手动将游戏对象添加到脚本的公开属性,因此可以节省在多个游戏对象中使用相同脚本代码时的时间。

标签对碰撞体控制脚本中的触发器很有用;例如,需要确定玩家是否与敌人、道具或可收集物进行交互。

可以使用 GameObject.FindWithTag 函数查找包含指定标签的任何游戏对象。以下示例便使用了 GameObject.FindWithTag()。该函数在具有“Respawn”标签的游戏对象位置上实例化 respawnPrefab

using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
    public GameObject respawnPrefab;
    public GameObject respawn;
    void Start() {
        if (respawn == null)
            respawn = GameObject.FindWithTag("Respawn");

        Instantiate(respawnPrefab, respawn.transform.position, respawn.transform.rotation) as GameObject;
    }
}

创建新标签

检视面板__在游戏对象的名称下方显示__标签 (Tag) 和__层 (Layer)__ 下拉选单。

要创建新标签,请选择__添加标签 (Add Tag…)__。随即在检视面板中打开标签和层管理器 (Tag and Layer Manager)。一旦命名了标签,以后就无法重命名。

层类似于标签,但用于定义 Unity 如何在场景中渲染游戏对象。请参阅有关的文档以了解更多信息。

应用标签

在__检视面板__中,游戏对象名称的正下方会显示__标签 (Tag)__ 和__层 (Layer)下拉选单。要将现有标签应用于游戏对象,请打开__标签 (Tags) 下拉选单,然后选择要应用的标签。游戏对象现在便与此标签关联。

了解内置标签

编辑器包含以下内置标签,它们不会出现在标签管理器中:

  • Untagged
  • Respawn
  • Finish
  • EditorOnly
  • MainCamera
  • Player
  • GameController

部分内置标签(如 MainCameraEditorOnly)具有独特功能。

编辑器会在内部缓存具有 MainCamera 标签的游戏对象。访问 Camera.main 时,编辑器会从其缓存中返回第一个有效结果。请参阅 Camera.main 以了解更多信息。

场景中标记为 EditorOnly 的游戏对象在游戏构建时被销毁。使用 EditorOnly 标记的游戏对象的任何子游戏对象也会在游戏构建时被销毁。

其他资源

从 layerMask 中删除层
基于文本的场景文件