(一)关于白鹭引擎Egret

Egret引擎是一个开源免费的游戏框架,用于构建二维游戏、演示程序和其他图形界面交互应用等。Egret使用TypeScript脚本语言开发。当游戏完成最终的打包后,可以将程序转换为HTML5游戏。实现跨平台特性。

Egret不仅仅是一个基于HTML5技术的游戏引擎,我们的产品线中除了Egret引擎还提供了很多辅助游戏开发的工具。准确的来说,Egret是一套游戏开发的解决方案。你可以使用Egret引擎来帮助你开发HTML5游戏,并运行在手机和PC端的浏览器中,同时也你可以使用Egret提供的相关工具搭建你自己的游戏开发工作流。

Egret团队在2014年5月15日正式发布了第一个测试版本,同时提供了附带的系列相关开发工具,以帮助开发者在使用Egret开发游戏时,更加快速便捷。

(二)开源的特性

Egret引擎是一款开源免费的2D游戏引擎。我们遵循BSD(Berkly Software Distribution,伯克利软件发行)开源协议。

BSD协议是一个给予使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。

但”为所欲为”的前提当你发布使用了BSD协议的代码,或者以BSD协议代码为基础进行二次开发时,需要满足三个条件:

  1. 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。

  2. 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。

  3. 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。

BSD协议鼓励代码共享,但需要尊重代码作者的著作权。BSD协议允许使用者修改和重新发布代码,也允许使用或在BSD协议代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候对源码进行修改或二次开发。

(三)白鹭引擎Egret的特点

开源免费

基于BSD开源协议的Egret引擎,可以让您自由的使用Egret来创作自己的游戏。

优秀的设计思想

Egret的设计思想大量借鉴了优秀的2D动画软件Flash的一些设计思想。在引擎的设计中,Egret底层使用了弹性跑道模型,显示列表,脏矩阵,事件模型等技术。在这些技术基础之上,我们封装了对用户极为友好的API。开发者在开发游戏时,无需考虑底层渲染逻辑,只关心游戏逻辑即可。

高效的渲染模块

在图形图像渲染中,Egret完全使用HTML5标准中的canvas技术。极大程度上保证了使用Egret引擎开发的游戏在各个浏览器上的兼容性。同时,为了给玩家更好的游戏体验,我们不仅仅提供了CPU渲染,还提供了性能更为强大的硬件加速渲染模式。该模式无需开发者自动开启,引擎会根据当前用户硬件类型智能判断启用。

完善的配套工具

Egret引擎的设计宗旨始终围绕在简化游戏开发上,用户在使用Egret的时候,能够体会到,所有的引擎设计全部围绕游戏开发。同时Egret提供的配套工具也极大简化了游戏开发流程。从游戏的代码编写,UI制作,地图拼接,关卡制作到最终游戏上线,研发过程中都有大量工具支撑。

灵活的工作流

Egret不限制开发工具的使用,我们也为一些优秀的第三方工具提供了相关插件。让用户在不改变开发习惯的情况下无缝迁移到Egret。

社区支持

Egret为用户建立了用户社区,如果在使用Egret过程中遇到了哪些问题,可以直接在用户社区中得到答案。同时,我们也为用户提供了大量文档手册,方便用户学习。

(四)白鹭引擎Egret的功能

Egret继承了Flash的优点,同时更加针对游戏开发,主要包括如下功能:

  • 显示列表:清晰、稳健、高效的视觉抽象结构
  • 精灵:一种轻量级显示容器
  • 事件机制:提供了一套生成和处理事件消息的标准方法
  • 纹理集合:将大量图片汇集为一张纹理图进行处理
  • 矢量绘图:封装了方便简单的矢量绘图功能
  • 网络加载:封装了常用的网络通讯协议
  • 位图字体:可通过位图字体方式显示文本
  • 性能监控:可在游戏中快速开启性能监控面板
  • 反射:对TypeScript增加了反射机制,方便模块化开发
  • XML处理:提供标准的XML格式解析生成功能
  • 骨骼动画:支持业内最优骨骼动画解决方案DragonBones
  • 资源加载:提供了整套资源加载方案,优化网络加载功能
  • GUI:提供大量组件,可快速开发游戏中的UI控件

不懂的可以加我的QQ群: 226508420(白鹭引擎Egret交流群 )欢迎你的到来哦,看了博文给点脚印呗,谢谢啦~~

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐