Features
Last Updated on November 19th, 2012 (sub-pages have their own dates)
This feature list pertains to version 1.1.0. Previous versions may not have specified features or they may work differently from described.
- Class-based, inheritance model code, easy class extending.
- 2D games.
- Isometric games.
- Arbitrary and tile-based positioning system.
- Automatic isometric depth sorting, with support for 3D cuboid bounds.
- Advanced realtime multiplayer, server-side simulations are piped to connected clients and includes server to client latency compensation and client-side entity interpolation.
- Engine runs in both browser AND Node.js with the exact same code base and same engine API.
- Includes basic networking too, simple network commands can be used if full realtime multiplayer system is not required by your game.
- MongoDB API abstraction for easy persistent data storage.
- Output via HTML canvas element.
- Camera-based viewports.
- Multiple viewport support.
- Optional automatic canvas resize on window resize.
- Scenegraph-based object hierarchy, all entities can mount to other entities.
- Particle emitters and advanced particle systems.
- Box2D integration, easy 2D physics setup and usage with built-in helper API to make Box2D easier to work with.
- Built-in, easy to use A* path-finding with powerful customisation features.
- Built-in quest system, setup quest objectives and listen for quest events.
- Support for grid-style and arbitrary-style sprite-sheets.
- Sprite-sheet-based animation support.
- Tweening system with easing functions included.
- Native canvas fonts and custom font sheet support + online font sheet generator with support for cursive fonts and Google web fonts.
- Automatic font-sheet system caching so the final text is rendered once instead of multiple font characters for every frame.
- Automatic polygon sub-division / triangulation for Box2D concave polygon fixture shape support.
- Import maps from popular tile editor “Tiled”.
- Mouse, keyboard and touch event handling, automatic screen-to-entity co-ordinate mapping for easy entity interaction.
- Image filters such as blur, colour overlay, sharpen, grey-scale, edge-detect, glow.
- Support for smart textures, textures that are created by executing canvas context methods instead of flat bitmap images.