- ×
GameJs is a thin library on top of the HTML canvas element. In addition to the drawing functions it has a set of generally helpful modules for game development.
Filed under gamesShow AllGameJs
GameJs is a JavaScript library for writing 2D games or other interactive graphic applications for the HTML Canvas.
Topics
Drawing on the screen
- image loading image files
- graphics image transformation (rotate, transform,...) and drawing with geometric shapes
- font rendering text
Mouse and keyboard
- event Recieve events for user input
Audio
- audio Playback with multiple channels
Game logic
- animate Spritesheets and animations
- tiledmap Load maps created with the Tiled map editor
- pathfinding A* Pathfinding
- pixelcollision Pixel perfect collision detection
Advanced
- thread utilize WebWorkers
- math/noise random noise generator
Math
Usage
See the examples directory for working examples.
Standalone
HTML File loads GameJs and sets the main module:
<script src="./public/gamejs.min.js"></script> <script> require.setModuleRoot('./javascript/'); require.run('main') </script>
The main module
javascript/main.js
starts the application:var gamejs = require('gamejs'); gamejs.ready(function() { var display = gamejs.display.getSurface(); ... });
GameJs as a CommonJs package with browserify
GameJs is a CommonJs package published on NPM. To use it with browserify install the GameJs package in your game's directory:
$ npm install gamejs
And install browserify, if you don't already have it.
$ npm install -g browserify
You can then bundle your application ("main.js") with all its dependencies - including GameJs - like so:
$ browserify ./main.js --out bundled.js
More Help
See the GameJs Website for more help or drop us an email in the Mailing List.
Example application can be found in the
examples/
directory.Development - How to build
GameJs consists of CommonJs modules in
./src/
which we build and jshint with grunt. If you don't already have node and npm, install those. You will also needjava
on your path for building the distribution file.Install grunt:
$ npm install -g grunt-cli
In the GameJs folder you cloned, install the dependencies to build using npm:
$ npm install
Build GameJs:
$ grunt
This will create the
gamejs-VERSION.js
file and a minifiedgamejs-VERSION.min.js
which you can use standalone in the browser, as demonstrated in the examples.