欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > 【Unity】 HTFramework框架(五十七)通过Tag、Layer批量搜索物体

【Unity】 HTFramework框架(五十七)通过Tag、Layer批量搜索物体

2026/3/7 9:25:16 来源:https://blog.csdn.net/qq992817263/article/details/144815624  浏览:    关键词:【Unity】 HTFramework框架(五十七)通过Tag、Layer批量搜索物体

更新日期:2024年12月30日。
Github源码:[点我获取源码]
Gitee源码:[点我获取源码]

索引

  • 问题再现
  • 通过Tag搜索物体(SearchByTag)
    • 打开SearchByTag窗口
    • 搜索标记指定Tag的所有物体
    • 批量修改Tag
    • 搜索Undefined状态的所有物体
  • 通过Layer搜索物体(SearchByLayer)
    • 打开SearchByLayer窗口
    • 搜索标记指定Layer的所有物体
    • 批量修改Layer
    • 搜索MissingLayer状态的所有物体

问题再现

我们可能会遇到这样的场景,比如需要定义一个Tag用来标记不会移动的建筑物件,我们新建了一个Tag叫Build,用它来标记这些物件。

在未来的某一天,出现了会移动的建筑物件,所以在Tag上要做出区分,我们需要将Build修改为StaticBuild,由于Tag不支持修改,只能先删除旧的,再添加新的。

那么问题来了,我们如何找到以前的所有标记为Build的物件?手动找虽然可行但场景和预制件太多的话绝对要命!而且在删除Build添加了StaticBuild后,以前所有标记为Build的物件的Tag都会丢失,变为Undefined状态。

通过Tag搜索物体(SearchByTag)

此时,我们便可以借助SearchByTagToolkit来快速应对这一变故。

打开SearchByTag窗口

通过以下菜单打开SearchByTag窗口:

在这里插入图片描述

搜索标记指定Tag的所有物体

支持在当前场景或当前编辑的预制件中搜索标记了指定Tag的所有物体:

在这里插入图片描述

在这里插入图片描述

你可以通过此方式找到所有标记为Build的物体,将其修改为新的StaticBuild后,再删除BuildTag。

批量修改Tag

此时可点击窗口下方Modify Tag Batch(批量修改标签)按钮,将所有物体批量修改为指定Tag:

在这里插入图片描述

搜索Undefined状态的所有物体

当然,如果你已先一步删除Build标签,此时所有标记了该Tag的物体都会处于Undefined状态,那么处理起来也简单,只需要搜索所有Undefined状态的物体:

在这里插入图片描述

然后再使用Modify Tag Batch功能,将其修改为你需要的Tag即可。

通过Layer搜索物体(SearchByLayer)

同理,我们也可以借助SearchByLayerToolkit来快速应对Layer的变化。

打开SearchByLayer窗口

通过以下菜单打开SearchByLayer窗口:

在这里插入图片描述

搜索标记指定Layer的所有物体

支持在当前场景或当前编辑的预制件中搜索标记了指定Layer的所有物体:

在这里插入图片描述

在这里插入图片描述

批量修改Layer

此时可点击窗口下方Modify Layer Batch(批量修改层级)按钮,将所有物体批量修改为指定Layer:

在这里插入图片描述

搜索MissingLayer状态的所有物体

当然,如果你已先一步删除了一个Layer,此时所有标记了该Layer的物体都会处于MissingLayer状态,那么处理起来也简单,只需要搜索所有MissingLayer状态的物体:

在这里插入图片描述

然后再使用Modify Layer Batch功能,将其修改为你需要的Layer即可。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词