Top JavaScript Game Engines of 2017
We have compiled a list of the top JavaScript game engines of 2017. Every engine has something different to offer or has a specialty of its own, and opinions and tastes vary among game developers. So even though your favorite engine is not on this list, it doesn’t mean that it’s no good.
But we chose to include only 10 on the list. So without further ado, here are our Top 10 HTML5 game engines for 2017, arranged in no particular order.
CreateJS
CreateJS is a set of modular libraries and tools which work together or independently to enable rich interactive content via HTML5.
It consists of EaselJS – another known library that makes working with the HTML5 Canvas element easy, TweenJS – used for tweening and animating HTML5 and JavaScript properties, SoundJS – a JavaScript library that with ease and efficiency lets you work with audio on the web and PreloadJS – lets you manage and coordinate the loading of assets and data.
CreateJS also supports tools like Zoë and Adobe Animate.
CraftyJS
Crafty is an open source, flexible JavaScript framework. It is best described as an engine that puts together multiple components that can be used for building interactive games. This enables you to make choices for your game without bloating your code or port a part of your code elsewhere without too much trouble.
Having over 30 components, Crafty also features an entity component system, sprite map support, collision detection, fire and forget events and many more components for sound, animation, effects and input. It has an excellent community where everyone is interested in helping fellow game developers to build and structure games.
CraftyJS was initially released as a 2D game engine, but it now currently supports WebGL 1.0.
lycheeJS
lycheeJS offers a complete solution for developing and deployment of HTML5 Canvas, WebGL or native OpenGL (ES) based games inside web browsers or other native environments. In relation to engines like ImpactJS, lycheeJS is fairly new, but appears to be updated on a reasonable basis.
lychee.js engine is a P2P self-improving AI that can write, debug, analyze, improve and understand software (both design and code wise).
Its unique platform allows cross-compilation to pretty much any platform there is; from Arduinos and Satellites to R/C cars and Desktop, Server or Router systems. The engine is fully isomorphic and P2P, so there is no limit in where it can run and whom it can communicate to.
melonJS
melonJS is an open source HTML5 game engine that encourages developers and designers to focus on content. This light-weight framework provides a collection of composable units and support for a number of third-party tools. It’s a powerful combination that can be used as a whole or apart.
It boasts WebGL, WebAudio and ES6 Collections. melonJS integrates the popular Tiled map format, allowing designers to easily create levels using the Tiled map editor and focus on the game itself.
KiwiJS
KiwiJS has been around since mid 2013. Kiwi integrates a super fast WebGL and Canvas rendering engine that can deploy your games to desktop and mobile devices.
The abundant collection of Kiwi plugins allows you to create more memorable game experiences. Those plugins include an achievements engine so you can create custom achievements based on user progress. There’s also an AI algorithm so your game can grow depending on the choices you are making.
Other plugins include an advanced integration of physics into your games, quest management, sprites and shades for all occasions. It also supports multi-touch.
BabylonJS
BabylonJS is without a doubt among the most popular JavaScript game engines. It is a complete JavaScript framework for building 3D games with HTML5, WebGL, WebVR and Web Audio.
Babylon doesn’t need to be installed on your computer, so all development can happen within the browser/code editor itself, making it an appealing choice for those who want to develop on the fly.
It is among the most in-depth game engines that can be used to create animated games or meticulously designed projects with a deeper capacity for interactivity. It has had a successful run for a number of years now, and continues to rise higher to the top as one of the leading JavaScript game engines with 3D and WebGL development support.
PlayCanvas
PlayCanvas is a cloud-based HTMl5 game engine and editor for 3D games, leaning towards real-time collaboration. It is a full-on game engine with 3D capabilities.
For graphics, it supports WebGL 3D, physical rendering, concise lights features (with shadows), lightmaps, meshes, GPU engine for particles with an in-built editor and PostFX. It also allows integration of 3D materials from 3D software. 3D physics are possible thanks to the Ammo.js 3D engine.
The great thing is that PlayCanvas operates in the cloud, so you can build browser games from within your browser.
Some see PlayCanvas as a premium engine, but if you look at the pricing you’ll notice that the only thing that’s not free is self-hosted hosting. If you go for the free plan your games will be hosted on PlayCanvas, which might be a hurdle for some but in the end, it’s a great way to get started.
PixiJS
PixiJS is another relative newcomer to the HTML5 scene – first released in early 2013. The library was developed and is maintained by goodboy digital. PixiJS is a rendering library that will allow you to create rich, interactive graphics, cross-platform apps and games without having to delve into the WebGL API or deal with browser and device compatibility.
Some of its many features include advanced text rendering, accessibility support, sprite sheet support, an asset loader, WebGL filters, multi-touch interactivity and more.
Its main appeal is the way it uses WebGL for faster performance. If WebGL isn’t supported, the engine falls back to standard canvas. It can be used alongside another HTML5 game engine like ImpactJS or Phaser (it’s even built into Phaser).
ImpactJS
ImpactJS is a powerful, well tested, and experienced HTML5 game engine with the initial release all the way back at the end of 2010. It continues to be maintained frequently and has a large supporting community that encourages its further development and refinement.
The ImpactJS framework has in-depth documentation so getting started is a well guided experience – two books even, on the subject of creating games with ImpactJS.
ImpactJS also includes a debugger and Weltmeister level editor to make developing HTML5 and JavaScript games even easier. It also features Ejecta framework which enables you to publish your HTML5 Games in the iPhone AppStore with perfect sound, multi-touch and almost native performance.
Phaser
Even though it’s relatively new, Phaser has become a favorite in building games using a HTML5 framework. It’s a fast, free, and fun open source HTML5 game framework.
Phaser is based heavily on Flixel and uses a custom build of Pixi.js for WebGL and Canvas rendering.
In addition to supporting desktop and mobile web browsers, Phaser allows games to be compiled to iOS, Android and native desktop apps via 3rd party tools.
Along with a fantastic open source community, Phaser is actively developed and maintained by Photon Storm. As a result of dedicated support, and a developer-friendly API, Phaser is currently one of the most starred game frameworks available and is being used by thousands of developers worldwide. From indies and multi-national digital agencies, to schools and Universities.