通过最近的项目,对ECS有了更深刻的认识.感觉也到了通过一个新的框架&游戏来整理一下最近所得的时候了.
首先,基于做事情的原则,这个事情必须要通过完成一个完成度较高
的游戏来完成.不然会没有目标驱动,光搭脚手架去了.
然后,技术选型上.在思虑了很久之后,放弃了我非常喜欢的Lua.在海外市场浸淫几年之后,发现热更新对于一些小产品实在是可有可无,不如把处理这些破事的时间,专注于其他模块.
ILRuntime
在之前的项目中使用过之后,也决定放弃了,性能实在捉急,在一个小规模的产品上需要花费时间进行性能优化,在我看来是底层技术本身的问题(也可以说是我没领悟最佳实践).
但是我还是留一手,在底层集成了huatuo
.理由很简单,它不会对游戏框架代码造成影响,我只需要将业务代码模块化即可,等产品做完之后,再考虑是否将这个模块打成dll加载.
正好这段时间可以静待他们框架成熟支持移动客户端,如果他们做得好,则开启热更新模式,否则直接跑native模式即可,对于上层业务的影响微乎及微.在没问题之后甚至还能反哺目前公司项目,非常不错.
囿于时间关系,其他的东西就不写原因了,先在下面记录一下选型和RoadMap.
第三方库
huatuo
– 已集成,调试成功.
Entitas
– 已集成入框架,分模块加载完成,业务模块搭建中,FairyGUI集成中.
FairyGUI
– 已集成入框架,未跑通.预计5月中旬完成.
LitJson
– 已集成入框架,未跑通.预计5月中旬完成.
GameAnalytics
– 已集成入框架,未跑通.预计5月中旬完成.
Nakama
– 已集成,待调试.
Luban
– 已集成,待调试.
BundleMaster
– 已集成入框架,未跑通.最后整合.
业务模块
UI
– 预计5月中旬完成.
Resource
– 预计5月中旬完成.
Network
– 预计5月下旬完成.
Calculate
– 预计5月下旬完成.