Ejoy2D是一款图形引擎、基于OpenGL ES的图形库。采用C和Lua开发,目前只支持Windows、Linux、Mac OS平台。Ejoy2D的一切高层API都是以Lua函数和对象形式提供的。二次开发人员完全可以用Lua来开发游戏。
Ejoy2D是 简悦(EJOY)游戏公司所开发的一款游戏图形引擎,该公司的CTO 云风(真名吴云洋)在 其博客和 微博上宣布了Ejoy 2D开源,遵循MIT开源许可,并将代码托管在 GitHub上。
微博截图
Ejoy2D的设计目标是可以轻松地嵌入到开发者的游戏引擎中,方便开发者定制自己所需的功能。
为什么要开发Ejoy2D?
据云风博客介绍,相比大家都使用Cocos2d-X进行游戏开发,开发一款自己的游戏引擎可控性会更强、方便定制开发者自己所需的功能,并且可以在性能上做针对性的优化。正如云风文章里所提到的,手机设备的硬件性能远不如PC,即使程序性能足够,开发者也需要考虑硬件能耗,让电池用更久一点,让设备不那么发烫。优化引擎也是游戏程序员的乐趣之一。
相关技术
Sprite是Ejoy2D里最重要的数据类型,但引擎几乎不提供运行时的Sprite构造方法,详细信息可以查看 资源文件。Animation是Ejoy2d中最复杂的数据结构。一个animation由若干component构成的。每个component 可以用id引用其它的sprite对象(不限于静态图片组还是另一组动画),但得保证不能成环。
关于Ejoy2D的更多详情可以访问 云风的博客。