
鲁迅曾经说过:人一上了年纪就喜欢瞎折腾,时间长了,总会折腾出一点奇妙的小东西出来的。既然折腾了,那就,开源吧。
为美好的引擎献上Framework!
直奔主题,框架名称:TinaX Framework.
项目地址:
yomunsam/TinaXgithub.com
文档地址:(虽然还没完善
TinaX Frameworktinax.corala.space开源协议:996ICU / AGPL3.0
这是个啥:
TinaX Framework 是一个基于Unity引擎的开发框架。
TinaX 的目标是为想要拿Unity做点什么东西的人提供一个“开箱即用”的框架工具。
主要功能
- 统一且简洁的资源管理系统:
- 采用“Asset/xxx/xxx.xxx”的路径来加载资源。
- C# 与 Lua语言的支持:
- 你可以使用Lua开发业务逻辑,也可以把Lua整个干掉使用C#开发整个业务。
- TinaX在Lua层封装了主要功能的API,大部分对框架功能的调用都可以被IDE提示和补全。
- “UIKit” 用户界面系统:
- 提供了基于“页面”的UI管理框架。
- 统一便捷的载入、隐藏、多页切换、关闭、参数传递、资源释放(GC)等
- I18N 国际化
- 跨语言的事件消息广播
- 简单音频管理
- wwise接入扩展
- 场景管理
- 时间任务调度
- 热更新
- ……
快速上手
- 快速上手1: Console hello world
- 快速上手2:UI hello world
- 快速上手3:UI 交互
平台支持
因为多线程的兼容性问题,已知暂不支持:WebGL
其他的理论上都兼容。
个人实际测试过的平台:Windows/Linux/OSX/Xbox/Windows 10 Mobile (IL2CPP)/iOS/Android
其他问题:
- 实际上,TinaX作为一个私有工具已经使用了有一段时间了,这次开源是把内部库中的代码剥离付费插件和一些与内部业务关联的模块之后推到另一个开放仓库的。这过程中项目的依赖库发生了比较大的变化,虽然暂时没发现,但是不排除会有新的bug产生。正在寻找测试有没有新的问题。如果有发现bug欢迎pr或issues。
- 有些功能剥离了内部业务模块之后,有些简陋,以后会重构。
- TinaX内有少量代码的时间跨度比较大,是我刚入行时候就写的,看起来会匪夷所思,正在寻找这样的代码并重构。
- TinaX是脱胎自实际业务需求的,这样的好处是framework是实际拿出来用过验证过的,但也有可能会导致视野有局限性,如果大佬们发现这个framework缺少啥功能的话,请给出建议。