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

Unity编辑器扩展之是否勾选Text组件BestFit选项工具(此篇教程也可以操作其他组件的属性)

想要批量化是否勾选项目预制体资源中Text组件BestFit属性(此篇教程也可以操作其他组件的属性,只不过需要修改其中对应的代码),可以采用以下步骤。
在这里插入图片描述

1、在项目的Editor文件中,新建一个名为TextBestFitBatchProcessor的C#脚本文件,然后把以下代码复制粘贴到新建的TextBestFitBatchProcessor的C#脚本文件中。

using UnityEngine;
using UnityEditor;
using UnityEngine.UI;
using System.IO;public class TextBestFitBatchProcessor : EditorWindow // 创建一个继承自 EditorWindow 的类
{[MenuItem("Tools/Batch Process Text Best Fit")] // 在 Unity 编辑器菜单中创建一个名为 "Batch Process Text Best Fit" 的选项public static void ProcessTextBestFit() // 定义一个公共静态方法,用于处理文本最适合批处理{string[] prefabGuids = AssetDatabase.FindAssets("t:prefab", new[] { "Assets" }); // 获取 Assets 目录下的所有预制体的 GUIDforeach (string prefabGuid in prefabGuids) // 遍历每个预制体的 GUID{string prefabPath = AssetDatabase.GUIDToAssetPath(prefabGuid); // 获取预制体的路径GameObject prefabObject = AssetDatabase.LoadAssetAtPath<GameObject>(prefabPath); // 加载预制体对象Text[] textComponents = prefabObject.GetComponentsInChildren<Text>(true); // 获取预制体中所有的 Text 组件,包括子对象foreach (Text textComponent in textComponents) // 遍历每个 Text 组件{textComponent.resizeTextForBestFit = true; // 将 Text 组件的 Best Fit 属性设置为 true}EditorUtility.SetDirty(prefabObject); // 标记预制体对象为脏,以便保存更改}AssetDatabase.SaveAssets(); // 保存所有更改的资产Debug.Log("Batch Process Text Best Fit Completed!"); // 在控制台打印批处理完成的消息}
}

2、保存TextBestFitBatchProcessor脚本文件中代码,回到Unity中,点击Unity主界面左上角中Tools然后再点击Batch Process Text Best Fit选项,然后就会自动开始处理,等待一段时间后,就OK了。

在这里插入图片描述

http://www.lryc.cn/news/303109.html

相关文章:

  • 分布式场景怎么Join | 京东云技术团队
  • 24-k8s的附件组件-Metrics-server组件与hpa资源pod水平伸缩
  • Spring RabbitMQ 配置多个虚拟主机(vhost)
  • 「Qt Widget中文示例指南」如何实现文档查看器?(一)
  • 如何创建WordPress付款表单(简单方法)
  • 虹科方案 | 释放总线潜力:汽车总线离线模拟解决方案
  • 欲速则不达,慢就是快!
  • ubuntu22.04@Jetson OpenCV安装
  • OpenGL学习——17.模型
  • 6.2 数据库
  • 计算机设计大赛 深度学习人体跌倒检测 -yolo 机器视觉 opencv python
  • 本地模拟发送、接收RabbitMQ数据
  • 前端 webSocket 的使用
  • opencv图像处理(一)
  • 消息队列-RabbitMQ:workQueues—工作队列、消息应答机制、RabbitMQ 持久化、不公平分发(能者多劳)
  • 前端秘法基础式(HTML)(第二卷)
  • PTA-统计英文字母和数字字符[2]
  • Elasticsearch:将 IT 智能和业务 KPI 与 AI 连接起来 - 房间里的大象
  • 基于芯驰 X9HP PTG4.1 在 yocto 中添加 Linux 应用
  • 【微服务安全】OpenID Connect 简介:现代应用程序的身份验证
  • Linux系统中HTTP隧道的搭建与配置步骤:穿越网络的“魔法隧道”
  • fastApi笔记04-查询参数和字符串校验
  • 笔记 记录
  • 相机图像质量研究(38)常见问题总结:编解码对成像的影响--呼吸效应
  • MQTT协议-ISO标准下基于发布/订阅范式的消息协议
  • 手动实现new操作符
  • 【flutter】环境安装
  • ROUGE-L和SPICE
  • vue3组件通信方式汇总
  • 备份服务器数据的重要