这个项目能做什么
Loxodon Framework 是一个专为 Unity3D 打造的轻量级 MVVM(Model-View-ViewModel)框架。它包含数据绑定和各种实用组件。该框架的性能经过精心优化,避免了值类型的装箱和拆箱,最大限度地减少了垃圾回收开销。它利用动态委托/静态代码织入技术,确保数据绑定与直接调用之间的性能相当,UI 视图更新期间零垃圾回收,等等。此外,它已在项目中得到验证,展现出卓越的性能、稳定性和可靠性,并具有清晰、可扩展的架构。
主要特性包括:
- MVVM 框架
- 多平台支持(PC/Mac/Linux、iOS、Android、UWP、WebGL)
- 高可扩展性
- 支持 async 和 await(C# 和 Lua)
- Lua 的 try/catch/finally
- 支持 XLua,可用 Lua 开发游戏
- 异步结果和任务支持
- 定时执行器和多线程
- 消息系统
- 可加密的偏好设置
- 本地化支持
- 代码织入
- 数据绑定支持:字段、属性、字典/列表/数组、事件、Unity EventBase、静态属性/字段、方法、命令、ObservableProperty/Dictionary/List、表达式绑定;避免装箱/拆箱,使用动态委托/静态代码织入以避免反射,最大限度地减少 GC,并在 UI 视图更新期间实现零 GC。
安装和详细文档可在仓库中获取。该框架需要 Unity 2018.4 或更高版本,支持 .Net 4.x 和 .Net Standard 2.0、Mono 和 IL2CPP。
多个插件扩展了该框架,包括:
- Loxodon Framework OSA:为 Optimized ScrollView Adapter 的 ListView 和 GridView 添加数据绑定。
- Loxodon Framework TextFormatting:扩展 StringBuilder AppendFormat 以避免 GC,并为 UGUI 提供 TemplateText 和 FormattableText 控件。
- Loxodon Framework TextMeshPro:为 AlertDialog 和 Toast 提供 TextMeshPro 支持,并通过 FormattableTextMeshProUGUI 和 TemplateTextMeshProUGUI 实现无 GC 的视图更新。
- Loxodon Framework Data:将 Excel 数据导出为 Json、Lua 或 LiteDB,并支持通过 Json.Net 进行 C# 对象转换。
- Loxodon Framework Fody:用于 ToString、PropertyChanged 和 BindingProxy 的静态代码织入插件。
- Loxodon Framework UIToolkit:将 UIToolkit 与数据绑定以及混合 UGUI 使用集成。
- Loxodon Framework ILRuntime:支持 ILRuntime。
- Loxodon Framework Localization For CSV:支持 CSV 本地化文件。
- Loxodon Framework XLua:支持 Lua 脚本游戏开发。
- Loxodon Framework Bundle:AssetBundle 管理器,具有依赖跟踪、模拟模式和冗余分析。
- Loxodon Framework NLog 和 Log4Net:日志插件。
- Loxodon Framework Obfuscation:对数值类型进行内存混淆以防止内存编辑。
- Loxodon Framework Addressable:与 Unity Addressables 集成。
- Loxodon Framework Connection:使用 TcpClient 的网络连接组件,支持 IPv4/IPv6。
- DotNetty for Unity:Netty 的 Unity 移植版。
- LiteDB:轻量级 NoSQL 嵌入式数据库。
该仓库包含快速入门示例、教程以及英文和中文文档。
评论
0 评分人数达到10人后显示
登录后参与讨论。