gamejs

thin CommonJs library for canvas and worker

  • gamejs

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
gamejs
462322.0.29 years ago10 years agoMinified + gzip package size for gamejs in KB

Readme

GameJs
GameJs is a JavaScript library for writing 2D games or other interactive graphic applications for the HTML Canvas.
Homepage: . Showcase of games built with Gamejs
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

math/vectors math/matrix math/random
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 need java on your path for building the distribution file.
Install then grunt commandline interface:
$ 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 minified gamejs-VERSION.min.js which you can use standalone in the browser, as demonstrated in the examples.