Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/haseeb-qureshi/asteroids
JS and HTML5 Canvas
https://github.com/haseeb-qureshi/asteroids
asteroids games html5-canvas javascript particle-effects
Last synced: about 2 months ago
JSON representation
JS and HTML5 Canvas
- Host: GitHub
- URL: https://github.com/haseeb-qureshi/asteroids
- Owner: Haseeb-Qureshi
- Created: 2015-05-26T01:02:00.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-01-19T23:21:19.000Z (almost 9 years ago)
- Last Synced: 2023-02-28T05:41:37.768Z (almost 2 years ago)
- Topics: asteroids, games, html5-canvas, javascript, particle-effects
- Language: JavaScript
- Homepage: http://haseeb-qureshi.github.io/Asteroids/
- Size: 6.82 MB
- Stars: 26
- Watchers: 1
- Forks: 18
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Asteroids Redux
###### A rejuvenation of the classic arcade game, made entirely in vanilla JS and HTML5 Canvas.### LIVE AT: http://haseeb-qureshi.github.io/Asteroids/
**Note: HTML5 Canvas rendering has major performance issues on many versions of Firefox. Please use IE or Chrome to ensure stable performance.**
![asteroids](./assets/asteroids.gif)
## Features
* Dynamic difficulty
* Sound effects
* Powerups (triple laser, total destruction, and 1-up)
* Points and ranking system
* Custom-made particle effects
* Background track from Ikaruga!## Implementation
* Extremely OO design, all objects strongly encapsulated
* Implements prototypical inheritance through surrogates (so all moving objects inherit common behavior from MovingObject class)
* Title screen stars are dynamically generated and drawn using O(n) algorithm
* Implements O(n) collision detection, measuring the radius of each collideable object with player's ship
* Particle effects generated dynamically using opacity and size throttling
* Garbage collects unused sprites and particles based on positioning and age
* Uses trigonometric functions to calculate movement physics, rotation, and ship geometry# Todo
* Invincibility on spawn