Version: 6000.3
语言: 中文
搜索您的项目和场景
使用项目搜索提供程序搜索资产

使用层次结构搜索提供程序搜索游戏对象

层次结构搜索提供程序搜索所有加载的场景,包括非活动场景。

搜索使用渐进式缓存,而不是索引,因此即使您的项目没有索引,您也可以使用它。

查询语法

提供者令牌:h:(对于Hierarchy)

查询示例

查询示例 描述
h: camera 查找全部游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表
场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,您可以放置环境、障碍物和装饰,实质上是分批设计和构建游戏。更多信息
请参阅术语表
有词camera以他们的名义。
h: t=MeshFilter vertices>4096 查找场景中大于 4096 个顶点的所有网格。
h: t=MeshRenderer ref="Assets/Art/Environment/Materials/Architect/M_Metal01.mat" 使用M_Metal01材质查找场景中的所有渲染器。
h: t:Camera #fieldofview>70 查找场景中视场属性大于 70 的所有摄像机。
h: t:Light #m_layer=5 #m_Intensity>0.5 在图层上查找场景中的灯光5强度属性大于0.5.
h: t:MeshRenderer #StaticShadowCaster=True 查找全部网格Unity 的主要图形基元。网格构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 表面必须转换为多边形。更多信息
请参阅术语表
场景中的渲染器,这些渲染器是静态阴影投射器。
h: tag=Player layer=9 按图层和标签查找场景中的对象。
h: t:SpriteRenderer #DrawMode=Sliced 查找全部精灵2D 图形对象。如果您习惯在 3D 中工作,精灵本质上只是标准纹理,但有一些特殊的技术可以组合和管理精灵纹理,以提高开发过程中的效率和便利性。更多信息
请参阅术语表
在场景中使用Sliced绘制模式。
h: t:SpriteRenderer -#DrawMode=Sliced 查找场景中绘制为普通精灵(未切片)的所有精灵。
h: t:SpriteRenderer ref="Assets/Prefabs/Crystal.prefab" 查找场景中引用特定预制件的所有游戏对象。
h: -t:LODGroup t:MeshRenderer vertices>2000 在场景中查找没有细节级别(LOD)且三角形计数大于2000的网格体。
h: ref=”Assets/Prefabs/Models/Buildings/Fence.prefab” 查找所选场景预制件中使用的所有资源。

提供程序筛选器

层次结构搜索提供程序支持以下筛选器。

组件和属性

层次结构搜索提供程序中组件和属性的语法:

  • 使用t前缀来搜索组件。如果使用 ,则前缀可能需要完全匹配,如果使用 ,则可能需要部分匹配=:.

    h: t:Came h: t=Camera

  • 使用component.propertyp(component.property)表示法以查找具有指定值的属性。

    h: Camera.Orthographic=true h: p(Camera.Orthographic)=true h: Orthographic=true h: p(Orthographic)=true

  • 如果属性对于组件是唯一的,则不必在查询中指定该组件。例如,如果只有相机在场景中创建特定视点图像的组件。输出被绘制到屏幕上或作为纹理捕获。更多信息
    请参阅术语表
    组件具有视野属性:

    h: fieldofview=60 h: Camera.fieldofview=60

  • 过滤器中的单词不能有空格,因此如果属性或组件名称包含空格,请将其删除。 例如Field of view成为fieldofview.

Unity 根据属性的内部名称索引属性,该名称可能与检查器一个Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表
窗。 要按属性值搜索,请执行下列作之一:

  • 使用使用属性显示名称的可视化查询生成器。
  • 在调试模式下检查“检查器”窗口,查找属性的内部名称。

提示: 要搜索与您在 Inspector 窗口中编辑的 GameObject 共享值的 GameObject:右键单击 Inspector 窗口中的属性,然后选择 Search Same Property Value

有关层次结构搜索提供程序中的组件和属性的更多信息,以及它们与项目搜索提供程序的不同之处,请参阅搜索项目和场景

按内置层或用户定义层查找游戏对象。

h: layer=<layer ID>

例如:查找 Water 层中的所有游戏对象,其 ID 为4:

h: layer=4

可视化查询生成器显示所有可用层,包括内置层。如果要使用文本查询,可以在标签和图层窗口中找到图层 ID 和名称。有关更多信息,请参阅层Unity中的层可用于有选择地选择游戏对象组加入或退出某些进程或计算。这包括相机渲染、光照、物理碰撞或您自己的代码中的自定义计算。更多信息
请参阅术语表
.

渲染层

通过内置或用户定义的渲染层查找游戏对象。

h: renderinglayer:NameOfRenderingLayer

例如:在Default渲染层:

h: renderinglayer:Default 

可视化查询生成器显示所有可用的渲染层,包括内置渲染层。如果要使用文本查询,可以在标签和图层窗口中找到图层名称。有关更多信息,请参阅 URP 中的渲染层简介

标签

通过内置或用户定义的标记查找游戏对象。

h: tag=<string>

例如,要查找带有Player:

h: tag=Player

可视化查询生成器显示所有可用标记,包括内置标记。如果要使用文本查询,可以在“标签和图层”窗口中找到标签。有关详细信息,请参阅<!标签和图层

参考

按游戏对象引用的资产查找游戏对象。

过滤器选项 查询示例 描述
按资产表达式引用(Reference By Asset Expression) h: ref={p:terrain} 这是一个嵌套查询。它会查找引用搜索结果的游戏对象terrain在项目提供程序中。
按实例 ID 引用(编号) h: ref=1000 查找引用具有指定实例 ID 的组件的游戏对象。要查看组件的实例 ID,请将 Inspector 窗口设置为 Debug Mode
引用资产(ID、路径或名称) h:ref:Assets/Trees/Prefab/Pine.prefab 查找按资产名称、确切路径或GlobalObjectId.
引用游戏对象(ID、路径或名称) h: ref=<$object:GlobalObjectId_V1-4-0000000000000000d000000000000000-2807357573292280742-0,UnityEngine.GameObject$> 查找按名称、确切路径或GlobalObjectId.

如果不知道资产的 ID,请将此筛选器用作可视化查询的一部分,您可以在其中从列表中选择引用的资产。如果需要文本查询,可以将视觉查询转换为文本查询。有关更多信息,请参阅启动和使用搜索窗口

要获取资源的确切路径,请在 项目(Project) 窗口中右键点击该资源,然后选择 复制路径(Copy Path) 。

查找引用的另一种方法是使用上下文(右键单击)菜单:

  • 项目窗口:右键点击资源,然后选择 在场景中查找引用(Find References In Scene) 或 在项目中查找引用(Find References In Project)。
  • 层次结构窗口:右键单击游戏对象,然后选择“在场景中查找引用”。
  • 检查器窗口:右键单击组件,然后选择在场景中查找引用

失踪

查找缺少引用的游戏对象,例如材质或脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表
.

可用选项:

  • 任何:任何缺失的引用。
  • 资产:缺少资产引用。
  • 预制件:缺少预制件引用。
  • 脚本:缺少脚本引用。
h: missing:<option>

例如:查找场景中缺少预制件引用的所有游戏对象:

h: missing:Prefab

预制件

找到预制件一种资产类型,允许您存储包含组件和属性的游戏对象。预制件充当模板,你可以从中在场景中创建新的对象实例。更多信息
请参阅术语表
或其游戏对象。

滤波器 查询示例 描述
任何 prefab:any 查找属于预制件的任何资产(项目搜索提供程序)或游戏对象(层次结构搜索提供程序)。如果您搜索prefab而不是prefab:any,结果包括字符串prefab在其名称或路径中。
改变 prefab:altered 查找具有覆盖的预制件实例或变体,包括默认覆盖。
资产 prefab:asset 查找预制件资产
基础 prefab:base 查找基础预制件。
实例 prefab:instance 查找属于预制件实例的对象。
prefab:model 查找属于模型预制件的游戏对象。
改 性 prefab:modified 查找具有重写的预制件实例的游戏对象。
非资产 prefab:nonasset 查找不是预制件资产的预制件。
定期 prefab:regular 查找常规预制件实例或资产。
根预制件 prefab:root 查找不是其他预制件子项的预制件
顶部(根) prefab:top 查找顶级预制件根
变体 prefab:variant 从变体(层次结构搜索提供程序)中查找预制件变体(项目搜索提供程序)或游戏对象。

有关不同预制件选项的详细信息,请参阅预制件

场景过滤器

根据影响游戏对象在场景中行为的属性查找游戏对象。

滤波器 查询示例 描述
积极 h: active=true 查找所有活动游戏对象。
孩子 h: is:child 罚款所有子游戏对象。
组件计数 h: components>5 查找具有五个以上组件的游戏对象。
隐藏 h: is:hidden 查找所有隐藏的游戏对象。
实例 ID h: id=33714 通过组件的实例 ID 查找游戏对象。要显示组件的实例 ID,请将 Inspector 窗口设置为 Debug Mode
h: is:leaf 查找没有子项的游戏对象。
路径 h: path="/ParentGameObject/ChildGameObject" 查找嵌套在 ChildGameObject 下的游戏对象。
预 置 h: is:prefab 查找所有预制件。
h: is:root 查找没有父级的游戏对象。
静态的 h: is:static 查找所有静态游戏对象。
可见 h: is:visible 查找所有可见的游戏对象。
体积大小 h: size>5 查找体积(基于其变换比例值)大于 5 的游戏对象。

自定义场景过滤器

按序列化属性查找游戏对象。

可用的筛选器取决于项目中的序列化属性。

模糊搜索

使用模糊搜索查找与查询相似但不完全匹配的项。例如,字符串的字符顺序不同,或者它们之间有其他字符。

查询示例:要查找两个游戏对象,一个名为score一个叫做scr:

h: +fuzzy scr

使用视觉查询时,模糊搜索筛选器是“选项”筛选器组的一部分。

结果

搜索窗口选项卡:层次结构

行动

层次结构搜索提供程序的上下文菜单包括以下作:

行动 描述
选择 Inspector 窗口和 Scene 视图中打开游戏对象。这是默认的双击作。要更改默认作,请参阅首选项
打开 “项目”和“检查器”窗口中打开游戏对象。
隐藏显示 场景视图中切换游戏对象的可见性。

其他资源

搜索您的项目和场景
使用项目搜索提供程序搜索资产