# UnityExtensions **Repository Path**: mengtest/UnityExtensions ## Basic Information - **Project Name**: UnityExtensions - **Description**: Unity 通用扩展,包括编辑器、运行时的即用扩展、API 扩展。目前含有 Tween(插值动画)、Path(样条路径)、FSM(状态机)、Save(存档)、Localization(本地化)等主要系统。 - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2020-04-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # UnityExtensions Unity 通用扩展,包括编辑器、运行时的即用扩展、API 扩展。 注意,源代码使用了最新的 C# 特性,作者只能保证在 Unity 2018.3 及以上版本可以正常编译(注意切换到 .NET 4.x),如果你想在旧版本中使用,请自行修复编译问题。 - 即用扩展 - Unity 菜单:Assets->Create->Unity Extensions,你可能会用到 Layers 脚本自动生成功能。 - Unity 菜单:Component->Unity Extensions,你可能会用到游戏对象池(Game Object Pool)、 FPS 显示、Tween 系统、Path 系统、本地化系统等功能。 - Unity 菜单:Window->Unity Extensions,目前有一个测量工具,设计者可能会喜欢——比如解谜游戏设计者 :-) - API 扩展 - 编辑器:位于 UnityExtensions.Editor 命名空间。有一些实用工具,推荐你快速浏览一下,或许可以为你的开发节约时间。 - 运行时(位于 UnityExtensions 命名空间) - Attributes:位于 RuntimeExtensions/Attributes 目录,有一些实用的 Attribute 帮助你快速定制编辑器。 - 基类型:位于 RuntimeExtensions/BaseClasses 目录,你会喜欢 ScriptableAssetSingleton,可以帮你方便地做项目配置文件并在脚本中访问。 - 扩展方法:位于 RuntimeExtensions/Extensions 目录,在你的代码中只要简单的添加 using UnityExtensions 即可使用这些扩展方法。 - 状态机:位于 RuntimeExtensions/StateMachines 目录,包含一般状态机和专为 UI 设计的栈状态机。 - 工具箱:位于 RuntimeExtensions/Utilities 目录,对应脚本中的各种 Kit 类。 - 存档:位于 RuntimeExtensions/Save 目录,包含一个跨平台的存档系统(目前仅实现 Standardalone/FileSystem)。 - 本地化:位于 RuntimeExtensions/Localization 目录,使用 Excel 开发本地化内容的本地化系统,支持玩家添加和修改语言。 - 其他补充类型:位于 RuntimeExtensions/Supplements 目录,你可能会用到快速链表、树或者可创建实例的 Random 类型。 关于一些 API 的使用范例位于 UnityExtensions/Test 目录,如果你不清楚该怎么用的时候可以参考下。

栈状态机示例:使用栈状态机管理你的 UI 逻辑

Tween 动画系统编辑器:使用一个控制器控制多个动画效果,在编辑器下即时预览

Tween 动画系统 UI 示例:通过 UI 事件系统可以方便的与 Tween 系统交互

Tween 动画系统材质属性:利用 MaterialPropertyBlock 实现的材质动画可避免复制材质,并且可自动识别属性数据类型

Path 系统:包含 Bezier Path 和 Cardinal Path 两种路径,可以方便得使物体沿着路径移动

本地化系统:使用 Excel 开发本地化内容,发布后保留原始文件即可支持玩家 MOD

本地化系统:在运行时切换语言