当前位置: 首页 > article >正文

【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即可。


http://www.kler.cn/a/459854.html

相关文章:

  • 机组的概述
  • 加固服务器有什么用?
  • 26.Java Lock 接口(synchronized 关键字回顾、可重入锁快速入门、Lock 对比 synchronized)
  • 【CVPR 2024】【遥感目标检测】Poly Kernel Inception Network for Remote Sensing Detection
  • Fabric链码部署测试
  • C#调用Lua
  • Perl语言的软件工程
  • 自动化办公-将 Excel 的 Sheet 页拆分成单独的 Excel 文件
  • chatgpt model spec 2024
  • ubuntu20.04 调试bcache源码
  • 【C++】BC89 包含数字9的数
  • Docker搭建MySQL
  • C++ 设计模式:命令模式(Command Pattern)
  • Python 网络爬虫 全面解析
  • 基于Spring Boot的宠物领养系统的设计与实现(代码+数据库+LW)
  • 2025新一代智能终端发展全面解析:技术创新、应用拓展与产业生态演变
  • window如何将powershell以管理员身份添加到右键菜单?(按住Shift键显示)
  • git将本地项目上传到远程仓库
  • HCIA笔记10--VLAN间互访、PPPoE协议
  • 把Huggingface下载的arrow数据集转化为json格式
  • 详细讲一下Vue3中的Transition组件用法(动画)
  • 嵌入式从入门到入土:C语言3(运算符、顺序结构、分支结构)
  • uni-app组件间传值
  • Tailwind CSS 实战:现代登录注册页面开发
  • 优优嗨聚集团:个人债务安全,走向财务自由的智慧之路
  • 嵌入式单片机中蓝牙模块的详解