相比于市面上其他的著名游戏引擎,例如Unity,cocos2dx,Unreal,Medusa游戏引擎目前还非常的简陋,目前实现的功能还集中在2D部分,3D的虽然已经预留的接口空间,但因为引擎相对定位于移动平台,而移动平台目前一大部分还是2D,所以3D部分目前还只是个框架。因为我自己的游戏是2D的,所以3D的部分也只是理论上架构了,但也还没有着手实现,但渲染显示3D模型倒是早就可以了。一般业内常用的defered shading框架还没有实现。
目前开源的版本应该说是0.1比较合适,主要是开源出来供学习讨论使用,并不推荐自己用来开发商业游戏。虽然我自己是用它来开发自己的游戏,一边做自己的游戏,一边升级引擎。预计在我自己的游戏的IOS和Android版本都上线之后,发布引擎的1.0版本。游戏引擎若是没有相关的编辑器和完善的工作流,那顶多也只能算是个玩具,无奈编辑器的开发工作量实在太大,所以目前也只是预留了编辑器的接口。我自己开发独立游戏,用的都是一些第3方的编辑器来使用。后续有精力了,也可以由本引擎自举做一些编辑器。各位目前可以更加关注引擎的本身。另外也因为我自己在eat dogfood的原因,所以引擎可能也会更着力在接口和功能都尽量简便。
支持的平台
- Win32
- IOS
- Android(在移植中)
已经实现的功能主要有(其他太基础的功能就不一一列举了):
- 2D自动渲染排序批次
- 自动相对UI布局,支持数据绑定,可以根据设备分辨率自动调整布局适配
- 行为Actions
- Spine骨骼动画支持
- Tield Map瓦片地图
- BMF,TTF字体和排版
- 音频引擎,Ogg
- "Lua"脚本绑定支持
- mpack资源打包格式,支持diff,merge,defrag,支持压缩加密,支持多packge按优先级读取
- FileId(Name-Order)平台自动检测统一资源管理
- 自定义的数据序列化协议(Siren),用C#语言本身做描述语言,直接运行C#项目生成极小C++解析代码,支持嵌入式生成
- MedusaCore 游戏无关的C++库,提供一些很有用方便的C++轮子,例如string format,C# like delegate and event
首先要感谢cocos2dx引擎,在我开始做移动平台游戏的时候(几年前),最开始用的就是cocos2dx,因为开源,所以可以快速的通过源码学习一些相应的技术。Medusa引擎的一些部分组件的灵感都来源于cocos2dx,例如Actions部分,Scene和layer的管理。但每次做游戏发现都需要对cocos2dx做一番升级改造,而且都得做一些扩展来跟自己的研发工作流工具匹配。同时,自己也在学习图形渲染,游戏引擎等游戏开发的相关部分,所以就萌生了自己写一款游戏引擎的想法,一边重复造一些轮子来学习,一边实验各种架构和效果,渐渐的到今日,发现可以发布0.1版本了,因为已经可以跑在Win32和IOS平台上了。虽然肯定还有许多坑和bug,但早开源出来回馈,也能早发现修复,也能得到更多的指点。
另外unity,unreal,gkEngine,KlayGE等引擎都让我受益良多,他们都是非常游戏的游戏引擎,是我学习的对象。
有想一起讨论可以:
fjz13@live.cn
QQ群:273882050
也可以直接在github提issue