My sketch, despite using only core Processing APIs, is unable to run under processing.js whatsoever, even with Java and JavaScript compatibility shims. Seems like I'll need to distribute binaries :(
Runs fine (>50 fps) on my laptop, but your mileage may vary
Features
- CPU "shaders" (they cause most of the lag lol)
- Lights are emissive (they give off light)
- Makeshift motion blur
- Vignette (hard to notice)
- (a lot more primitive than the others but still part of the pipeline) Light flashes upon death
- Eye candy
- Asteroids blow up into multiple pieces upon destruction
- Fancy particles!
- Twinkling lights
- Parallax effects (move around your mouse)
- Fully-fledged 2d physics engine (thanks ap physics)
- Objects can interact with each other, and push things around
- Literally everything moving is a physics object and can be destroyed
- Bullets will only destroy asteroids if they hit each other at the right speed and angle (try to graze an asteroid from a far corner of the screen)
- You can ram into asteroids with your spaceship to destroy them (don't ram into them too hard!)
Controls: w a s d to move, e for hyperspace, and <space> to shoot
macos-x86_64.zip: For macOS devices running Intel processors (not M1 or M*, although it is possible to run this on Apple Silicon macs)- Does not come bundled with Java -- you might want to get JRE 17 first
AsteroidsGame-macos-aarch64.zip: For macOS devices running Apple Silicon chips ONLY (M1 and later; comes with JRE)windows-amd64.zip: For Windows devices (comes with JRE)