在“最火HTML5 JavaScript游戏引擎”系列文章国外篇(一)中,我们盘点了当下备受开发者推崇的非国产HTML5和JavaScript游戏引擎。在各种2D小游戏逆袭的今天,用HTML5和JavaScript进行游戏开发成为了一大潮流,而HTML5和JavaScript游戏引擎也逐渐走向了成熟,在追求原生体验的同时,也深逐精致细腻狂炫酷拽。在本文中,我们将继续介绍来自国外,非常受开发者欢迎的HTML5和JavaScript游戏引擎。
1. melonJS
melonJS这款轻量级的开源免费HTML5 2D游戏引擎,一直以来,都是颇受开发者喜爱。melonJS基于MIT许可协议发布,其所有代码均已托管到GitHub上。
melonJS是一个独立的库,拥有许多非常强大的特性,包括兼容所有主流浏览器(Chrome、Safari、Firefox、Opera、IE等)、支持多声道音频、Tween动画效果、转场效果等。并集成了流行的砖块地图格式,开发者可使用Tiled map编辑器轻松设计游戏关卡,从而更专注于游戏功能开发本身。
相关链接:melonJS的GitHub托管地址、mobilehub主页
2. Turbulenz
Turbulenz是一款开源的HTML5 2D和3D游戏引擎,于2009年初开发,并不断完善。2013年5月2日,Turbulenz CEO James Austin在Turbulenz官网博客上宣布,Turbulenz基于MIT许可证开源,其代码均托管到GitHub上。2013年8月12日,Turbulenz发布Turbulenz引擎Android开发者应用,帮助开发者快速进入游戏状态,以进行游戏性能测试。
Turbulenz允许所有构建基块的开发者创建高质量和硬件加速的2D、3D游戏,该项目可适用于多个平台包括智能手机、平板及Web,支持Windows、Mac OS X、GNU/Linux等系统,为开发者提供给了易于安装的SDK,涵盖了开发者所需要的开发、运行、发布和部署项目等所有功能。
相关链接:Turbulenz的GitHub托管地址、mobilehub主页
Isogenic游戏引擎号称是世界上最先进的HTML5 2D和基于等距场景图的多玩家游戏引擎,拥有基于图像的架构艺术场景,容易使用的实时多玩家功能。Isogenic完全使用JavaScript编写,支持所有主流浏览器及移动设备。
Isogenic支持2D和等轴游戏,能够为开发者提供粒子发射器,开箱即用的补间动画和基于单元格的动画,轻松定位文本和字体等功能。使用Isogenic引擎,开发者可以创建出拥有现代物理效果的复古游戏。
相关链接:Isogenic Game Engine的mobilehub主页
4. Akihabara
Akihabara是一款基于HTML5的2D游戏引擎,可以预设使用JavaScript创建8/16bit的独立像素游戏,无需任何Flash插件,即可运行于浏览器之上。Akihabara使用了HTML5的一小部分特性,所开发的游戏能够良好运行于现代浏览器中,并且,对于iOS等主流移动平台均有针对性的优化。
相关链接:Akihabara的mobilehub主页
Canvas Engine是一款开源的HTML5游戏开发框架,基于MIT许可协议发布,其所有源代码均已托管到GitHub上。通过Canvas Engine所创建的HTML5游戏可良好运行于所有现代浏览器、平板电脑及智能手机之上。
Canvas Engine提供了包括场景结构、多玩家模型、Tiled Map Editor、Gleed 2D等所有简便的特性,以及一个简单的架构API,来帮助开发者创建HTML5 Canvas游戏,尤其是开发2D视频游戏。
Gogo Make Play(简称为GMP)是一款快速且免费的开源JavaScript游戏引擎,基于MIT和GPLv2许可协议发布,其所有代码可登陆GMP官网下载。GMP诞生于2006年12月,其开发者为来自加拿大温哥华的软件开发者Trevor Cowley。GMP最初是Trevor一款基于浏览器的弹球游戏的后端代码,后逐渐发展成为一个独立的引擎。
GMP体积小,操作简单,非常易于学习和使用,开发者只需掌握简单的HTML/JS/CSS,就可以通过Web浏览器来构建和管理HTML页面,GMP拥有完整的API文档以及用户手册和教程,在未来,Trevor还将推出一系列的插件和游戏组件模板,以帮助开发者更方便容易地进行游戏开发。
相关链接:Gogo Make Play的源码下载地址、mobilehub主页
7. CreateJS
CreateJS是一款可以构建丰富交互体验的HTML5游戏开发框架,由Flash达人Gskinner开发,Adobe、微软和AOL官方赞助,并已托管到GitHub上。CreateJS大部分API都是基于Flash原有的API来模仿实现的,并且官方提供了直接把Flash动画转成JS数据包的工具,调用起来很方便。
CreateJS提供了若干开发套件及工具,分别是:EaselJS(负责图形、事件、触控、滤镜等功能)、TweenJS(补间动画)、SoundJS(音频控制)、PreloadJS(文件加载)和Zoë(生成图片精灵及动画数据)。
主要优点:
- Flash开发者很容易上手;
- 提供了Flash转HTML5的工具,可以将部分Flash代码进行转换再修改;
- 基于MIT协议的开源框架;
- 类库设计非常独立,包含不同的模块,可选择性使用。
相关链接:CreateJS的GitHub托管地址、mobilehub主页
8. jGen
jGen是一款开源的JavaScript游戏引擎,其开发者为来自俄罗斯莫斯科的Ruslan Matveev。jGen支持简单的精灵动画、碰撞和渲染等轴地图等功能,其目标是让开发者不使用Canvas,只需HTML和JavaScript就可以开发出基于现代浏览器的应用,目前,jGen仅支持Chrome和Safari。
相关链接:jGen的GitHub托管地址、mobilehub主页
9. Pulse
Pulse是一款开源的JavaScript游戏和图形引擎,由Modulus团队开发,成员包括Charlie Key、Brandon Cannaday、Richard Key。Pulse为开发者提供了一个非常简单的框架,只需几行JavaScript和HTML代码就可以构建HTML5游戏。此外,Pulse还引入了插件架构,开发者可以轻松进行核心功能的扩展。
相关链接:Pulse的GitHub托管地址、mobilehub主页
10. LycheeJS
LycheeJS是一款环境独立的开源JavaScript游戏引擎,基于MIT许可协议发布,可以在任何支持JavaScript的环境中运行。LycheeJS于2012年6月面世,其理念是做最快的JavaScript游戏引擎。
LycheeJS提供了CDN、WebSockets、SPDY、HTTP2.0以及游戏截图支持,可高性能运行于PC(Firefox、Chrome、Opera、Safari、IE)和移动平台(WebKit、Chrome、Firefox、Safari)浏览器之上。
11. Impact
Impact是一款非常专业的JavaScript和HTML5游戏快速开发引擎,随处运行,拥有着非常灵活的多功能Weltmeister关卡编辑器、强大的调试工具,能够让开发者为桌面和移动浏览器开发出令人惊叹的HTML5游戏,支持Firefox、Chrome、Safari、Opera和IE等主流浏览器。
相关链接:Impact的mobilehub主页
12. Crafty
Crafty是一款轻量级的开源HTML5 2D游戏引擎,基于MIT或GPL协议发布,支持桌面及移动平台浏览器。其最大特点就是没有使用典型的类和继承体系,而是为开发者提供了基于实体和组件的结构来组织代码,能够轻松创建可重用的组件,具有相当大的灵活性。
主要特性如下:
- 实体和组件:无需任何继承,组织游戏元素干净利落。
- Eventbinding:事件系统可随时随地进行触发、绑定等自定义事件操作。
- DOM或自定义绘图画布渲染。
相关链接:Crafty的GitHub托管地址、mobilehub主页
13. Playcraft
Playcraft是由Playcraft Labs于2012年推出的一款HTML5 JavaScript游戏引擎,其总部位于美国旧金山。Playcraft为开发者配备了一个完整的HTML5游戏开发引擎工具包,通过Playcraft,开发者可以轻而易举地完成游戏开发并直接将其推广到市场,并将其转换到包括Facebook、网站及Android和iOS等PC和移动平台之上。
Playcraft支持高速渲染,拥有基础物理、自定义Box2D接口和AI功能。此外,Playcraft还内置了加速器,开发者可以直接将页游代码打包利用到相应的iOS和Android应用中,并以原生速度运行。
相关链接:Playcraft的mobilehub主页
14. Jaws
Jaws是一款开源的HTML5 JavaScript 2D游戏引擎,基于LGPL许可协议发布,不依赖于任何其他JavaScript库,支持Chrome 9+、Firefox 3.6+、Safari 5+及IE9等主流桌面及移动浏览器。不仅可以用来制作canvas,还支持通过相同的API来制作基于普通DOM的sprites。
相关链接:Jaws的GitHub托管地址、mobilehub主页
15. enchant.js
enchant.js是一款非常简单的,基于HTML5 JavaScript的开源框架,基于MIT许可协议,于2011年正式发布,其所有者为来自日本东京的Ryo Takahashi。enchant.js拥有着非常丰富的支持文件,包括API文档、书籍和教程网站等,可通过各种插件来增加功能。
主要特性:
- 面向对象:所有展示的项目都是对象;
- 多平台支持:能够在iOS、Android、Mac、Windows浏览器中运行;
- Windows 8:支持Windows 8和HTML5交互开发;
- 事件驱动:通过事件监听器实现基于异步处理;
- 动画引擎:允许使用Tween等标准动画;
- 混合绘图:支持Canvas API和DOM绘图渲染;
- WebGL支持:支持使用WebGL进行3D游戏开发;
- 内容库:包含了一个可免费使用的图像库。
- 16. Collie
- Collie是一款基于HTML5的高性能JavaScript动画库,可用于创建高度优化的HTML5动画和游戏。Collie的开发者是NHN株式会社的高级JavaScript开发者Sangmin Shim。Collie可运行于PC及移动平台之上,支持使用HTML5 Canvas和DOM,能够多线程稳定地处理多个对象,拥有着非常丰富的实用功能,比如精灵动画、用户事件等。
相关链接:Collie的mobilehub主页
17. Traffic Cone
Traffic Cone是一款基于Tile的HTML5 2D和2.5D游戏开发引擎,它能够让基于Sprite和Tile的复杂动画变得相当简单。
主要特性:
- 易于配置的精灵动画;
- 通过Traffic Cone的世界模型对3D建模进行分层、深度、定位处理;
- 基础等距寻路、AI和碰撞侦测;
- 基于sprite支持,自定义绘图画布。
相关链接:Traffic Cone的mobilehub主页
18. Quintus
Quintus是一款易于上手、轻量级、开源的HTML5 JavaScript游戏引擎,包含一个模块化的引擎可轻松开发游戏,并在同一个页面上运行多个实例,支持桌面及移动平台浏览器。Quintus引用面向对象的思想来进行HTML5游戏开发,同时依赖于jQuery来提供事件处理机制和元素选取操作。
相关链接:Quintus的GitHub托管地址、mobilehub主页
19. FlashJS
FlashJS是一款开源的JavaScript图形和游戏开发引擎,拥有着与Flash相似的API,支持Safari、Chrome、Firefox 4+、IE9+及Opera 11等主流桌面及移动浏览器。它是一个基于成熟的Flash技术的HTML5游戏开发工具,可以在<actionscript>标签内写ActionScript 3代码。
相关链接:FlashJS的GitHub托管地址、mobilehub主页
20. gameQuery
gameQuery是一款非常易于上手和使用的开源JavaScript游戏引擎,通过添加一些简单的游戏类,使用jQuery插件来帮助开发者开发JavaScript游戏,即使是初学者也可以轻松编写一个功能丰富的2D游戏。gameQuery基于DOM操作,能够兼容Firefox、Chrome、IE、Safari、Opera等大量桌面及移动浏览器。
主要特性:
- 多重精灵动画
- 清晰的层次结构
- 碰撞检测
- 支持声音切换
- 周期性回调
- 键盘状态轮询
相关链接:GameQuery的GitHub托管地址、mobilehub主页
亲爱的开发者们,你最喜爱或常用的HTML5 JavaScript游戏开发引擎又有哪些呢?敬请期待《最火HTML5 JavaScript游戏引擎(二)》。