使用 HTML5,CSS3 和 Javascript 可以帮助面向对象开发者开发拥有各种特性的游戏,比如:3D 动画效果,Canvas,数学,颜色,声音,WebGL 等等。最明显的优势在于使用 HTML5 开发的游戏能在任何现代化流行的设备上运行。
某些游戏引擎仅仅是一个抽象的层次,就简单处理一些或者更多的繁杂游戏开发任务;其他只是注重 asset 加载,输入,物理效果,音频,sprite 地图和动画,而且相当多样化。还有一些引擎架构极其简单,只包括一个 2D 水平的编辑器和调试工具。
大部分的游戏引擎都能提高游戏开发的效率,即使是创建全功能型的游戏。但是,也有一些开发者为了能更好的理解游戏的每个组件,喜欢从头开始创作。现 在基于 Javascript-HTML5 的游戏引擎也不少,这是好事,同时,也是个坏事,因为事实上大多数开发出来的产品都没人维护,或者即将停止维护。所以,选择某一游戏引擎需要仔细考虑的就 是该引擎在未来几年是否会继续维护,更新,进行功能增强。
在这篇文章中,我们经过各种资料探寻,测试,实际应用等方法,收集了专门提供给开发者的20 款免费的 JavaScript 游戏引擎, Enjoy!
1. Crafty
craftyJS 个轻量级的,模块化 JavaScript 游戏引擎,包括了许多组件:动画,事件管理,重新划分区域,碰撞检测,sprite 等等。它支持所有类型的浏览器,比如 IE9。不需要 dom 操作和自定义绘图程序。
Quintus 引擎是个 HTML5 游戏引擎,模块化,轻量级,而且带有简洁的 Javascript 友好的语法。 Quintus 是一个易学,使用有趣的 JavaScript HTML5 游戏引擎,支持移动和桌面开发。包含一个模块化的引擎可轻松开发游戏,并在同一个页面上运行多个实例。
gameQuery 是 个易于使用的 jQuery 插件,可以通过添加相关游戏的类来帮助开发 Javascript 游戏,自从它使用 DOM 操作代替了 Canvas gameQuery ,现在可以兼容大量的浏览器,即使是比较旧的版本:Firefox, Chrome, Internet Explorer, Safari, Safari for iOS, mobile versions of Webkit 和 Opera。
4. GMP
GMP 是个杰出的制作基于 sprite ,2D 游戏的引擎。它可以很容易就设计出最 retro 风格的街机游戏,同时也是很好的制作游戏的工具(比如 sudoku 和 gogopop)。在线演示
5. lycheeJS
lycheeJS 是个 JavaScript 游戏库,提供完整的原型解决方案和 HTML5 Canvas 部署,在 Web 浏览器或者原生环境的WebGL 或者是基于原生 OpenGL(ES) 的游戏。这个项目的开发过程优化了 Google Chrome 和它自身的开发工具。
6. Enchant.js
Enchant.js 是个简单的 JavaScript 框架,可以使用 HTML5 和 JavaScript 来开发简单的游戏和应用。现在还是由 UEI 的 Akihabara 研究中心来开发和维护。在线演示
7. Starlingjs
Starling Starling 是在 Stage3D APIs 基础上开发的一种 ActionScript 3 2D 框架(可用于 Flash Player 11 和 Adobe AIR 3的桌面)。 Starling 是为游戏开发设计的,但是你可以将它应用于很多其它的应用程序。 在不必涉及低级 Stage3D APIs 情况下,Starling 使得编写具有快速 GPU 加速功能的应用程序成为可能。
8. The Render Engine
The Render Engine 是个跨浏览器的,开源游戏引擎,完全使用 JavaScript 编写。它拥有一个扩展的 API 和使用当前最新的现代浏览器特性。此款引擎旨在帮助用户使用基础的工具来开发游戏,加快游戏概念到成品的过程。
9. Akihabara
akihabara 是一系列的库和工具,可以预置创建 pixelated indie-style 8/16-bit era games ,使用 JavaScript , HTML5 canvas 标签和一些标准 hooks 开发。
10. JsGameSoup
Js Gamesoup 是个开源免费的软件框架,使用 JavaScript 和其他开放 web 技术来开发游戏:
- Modular -可独立工作的 JavaScript 文件组件
- 使用开放的 web 技术: Canvas 和 HTML5.
- 支持 Firefox (Gecko), Safari/Chrome (WebKit), Internet Explorer 6+, Android 和 iOS
11. Gamejs
GameJs 是一个基于浏览器的2D游戏开发框架,使用JavaScript和Canvas。使用GameJS这个超酷的Canvas游戏库,能写出优秀的基于Canvas的游戏。
12. CSS Game Engine
CSS game engine 使用 JavaScript 和 CSS (Cascading Style Sheets) 来装饰页面,他们在一起使用非常可靠。使用这个引擎可以创建属于用户自己的游戏,这个项目主要针对的是初学者,想学习如何编写音频游戏的开发者。用户最好 是个 web 设计师,有点 CSS 基础。
13. Clanfx
clanfx 是个 2D ,平铺的一个 JavaScript 游戏引擎,使用 JavaScript 和 CSS 开发。当前支持的浏览器有:Firefox, Epiphany 和 Opera browsers。主要特性包括许多动态 sprites,spell 效果,建筑,瓷砖纹理和基础的游戏 AI。
14. gTile
gTile 是个基于浏览器的游戏引擎,完全由 Javascript 和 DHTML 开发。它使用 2D 视图来保证简单性和可访问性。此款游戏的成功之处是较强的交互性和游戏对象行为,而不是花俏的图像和动画。在线演示。支持的浏览器有: IE6+, Firefox 2.0+, Safari 2.0+ and Opera 9.5+,不需要下载任何组件或者插件。
15. J5g3
j5g3 是个开源 Javascript 图像引擎,语法非常易于使用,可以进行快速开发和扩展。
16. Jaws
Jaws 是个 HTML5 驱动的 2D 游戏库,刚开发的时候只能用来制作 canvas,现在支持通过同样的 API 来制作普通基于 DOM 的 sprites。支持:Chrome 9+, Firefox 3.6+, Safari 5+ & IE9。
17. Cocos2D
Cocos2D JavaScript 是 Cocos2D for iPhone 的 HTML5 端口。它是个 2D 图像引擎,允许快速开发 2D 游戏和图像应用。它可以在任何现代化浏览器中运行,不需要第三方插件,比如 Adobe Flash。
18. CopperLicht
CopperLicht 是个 WebGL 库,同时也是 JavaScript 3D 引擎,可以创建 3D 游戏和网页应用。它使用 WebGL canvas ,支持现代主流浏览器,不需要任何插件就可以硬件加速渲染 3D 图片。
19. Aves
Aves 是个 html 和 javascript 游戏引擎,让人想起 oldieworldie RPGs (除了, 更多的图像功能),所有的渲染效果都是由 html 和 javascript 开发的,不需要任何插件!
20. LimeJS
LimeJS 是个 HTML5 游戏框架,用来构建游戏。它在现代化触屏设备和桌面浏览器上看起来像是原生的,而且运行速度快。LimeJS 通过 Google 和相关的函数/类 来创建 Closure 库,控制时间线,时间,形状和动画效果。同时,此框架完全支持 sprite 表(用户可以从单个文件中收集所有图片)。