# UnityExtension **Repository Path**: NuoYanRuoShui/Extension ## Basic Information - **Project Name**: UnityExtension - **Description**: 一个 Unity 扩展工具包,提供了一系列实用的编辑器扩展和运行时工具,旨在提升 Unity 开发效率。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://space.bilibili.com/498740768?spm_id_from=333.1007.0.0 - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-08-28 - **Last Updated**: 2026-01-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 扩展工具包 (Extension Toolkit) 这是一个 Unity 扩展工具包,提供了一系列实用的编辑器扩展和运行时工具,旨在提升 Unity 开发效率。 ## 主要功能 ### 属性编辑器扩展 (Attribute Editor Extensions) - 支持中文标签显示 - 自定义 Inspector 界面样式 - 枚举类型字段的可视化编辑 - 路径选择器 - 分组折叠面板 - 范围滑块控件 ### 运行时属性 (Runtime Attributes) - `SampleChinese` - 显示枚举类型的中文名称 - `NuoYanHeader` - 自定义 Inspector 标题 - `ReadInEditor` / `ReadInPlay` - 控制字段在编辑器/运行时的可读性 - `LabelText` - 在 Inspector 中显示只读文本标签 - `MonoText` - 为 MonoBehaviour 添加描述文本 - `EnumClassAttribute` - 枚举类选择器 - `EnumBool` / `EnumArray` - 枚举布尔值和数组选择器 - `SelectPath` - 路径选择属性 - `GroupAttribute` - 字段分组 - `RangeSlider` - 范围滑块 ### 按钮扩展 (Button Extensions) - `ButtonEx` - 增强型按钮,支持多种交互事件 - `RotateButton` - 可旋转按钮,支持自定义旋转模式 ### 集合工具 (Collection Utilities) - `BidirectionalDictionary` - 双向字典,支持序列化 ### 扩展方法 (Extension Methods) - 游戏对象相关:组件查找、屏幕可见性检测 - 输入处理:鼠标位置转换、屏幕坐标检测 - 列表操作:弹出元素、字符串连接 - 变换操作:子对象计数、活动对象获取 - 文本处理:颜色标记、链接交互 - 向量操作:序列化转换、数值比较 ## 使用方法 1. 将本工具包导入 Unity 项目 2. 在脚本中引用 `NuoYan.Extension` 命名空间 3. 根据需要使用相应的属性或工具类 ## 示例代码 ```csharp using UnityEngine; using NuoYan.Extension; public class Example : MonoBehaviour { [NuoYanHeader("配置设置", ColorType.Blue, true)] [SerializeField] private float speed; [RangeSlider(0, 100)] public vector2 health; [EnumClassAttribute(typeof(MonoBehaviour))] public string selectedClass; void Start() { // 使用扩展方法 var childCount = transform.GetActiveChildCount(); Debug.Log($"活动子对象数量: {childCount}"); } } ``` ## 许可证 本项目采用 MIT 许可证。详情请查看 LICENSE 文件。