1 | ![Splat ECS](./images/splat-ecs-logo.png)
|
2 |
|
3 | A 2d HTML5 Canvas game engine
|
4 |
|
5 | Splat ECS is a 2d game engine made for creating multi-platform games entirely in JavaScript. Splat ECS is built around the [Entity Component System](https://github.com/ericlathrop/entity-component-system) pattern, which is flexible and promotes composition of behaviors.
|
6 |
|
7 | # Features
|
8 |
|
9 | * Rectangles!
|
10 | * Keyboard, mouse, touch, & gamepad input
|
11 | * Sounds and music (Web Audio API and HTML5 Audio)
|
12 | * Sprite animation
|
13 | * Asset loading, and built-in loading screen
|
14 | * Games work well on phones, tablets, and desktop browsers.
|
15 | * A\* Pathfinding
|
16 | * Particles
|
17 | * Tiled map editor support
|
18 | * Easing
|
19 |
|
20 | # Supported (tested) Platforms
|
21 |
|
22 | * Chrome (desktop & mobile)
|
23 | * Firefox
|
24 | * Internet Explorer (desktop & mobile)
|
25 | * Safari (desktop & mobile)
|
26 | * Mac using [Electron](https://github.com/atom/electron)
|
27 | * Linux x64 using [Electron](https://github.com/atom/electron)
|
28 | * iOS using [Ejecta](http://impactjs.com/ejecta)
|
29 | * Chrome Web Store
|
30 |
|
31 | Splat ECS works in PhoneGap/Cordova, but it seems like the apps it produces lack hardware acceleration, making games unplayable.
|
32 | Splat ECS may or may not work on other platforms, please let us know what you find out.
|
33 |
|
34 | # Create a new Game (recommended)
|
35 |
|
36 | [Fork the starter project](https://github.com/SplatJS/splat-ecs-starter-project)
|
37 |
|
38 | # Install through [NPM](https://www.npmjs.org)
|
39 |
|
40 | ```
|
41 | $ npm install --save splat-ecs
|
42 | ```
|
43 | Then require Splat ECS into your game:
|
44 | ```
|
45 | var Splat = require("splat-ecs");
|
46 | ```
|
47 | Then use [browserify](http://browserify.org/) to bundle your game as a single JavaScript file for the browser.
|
48 |
|
49 | # Games using Splat ECS
|
50 |
|
51 | * [Splat ECS starter project](https://github.com/SplatJS/splat-ecs-starter-project)
|
52 | * [Polymorphic](https://github.com/RiseAndShineGames/Polymorphic)
|
53 | * [Electropolis](https://github.com/twoscoopgames/electropolis)
|
54 | * [Cluster Junk](https://github.com/TwoScoopGames/Cluster-Junk)
|
55 | * [Zen Madness](https://github.com/aquisenberry/ggj_meditate)
|
56 | * [Treatment and Control](https://github.com/TwoScoopGames/Treatment-and-Control)
|
57 | * [Uprooted](https://github.com/TwoScoopGames/ld32)
|
58 | * [The Day the World Changed](https://github.com/TwoScoopGames/ggj15)
|
59 |
|
60 | Send a pull request to add your game to the list!
|