A Haskell implementation of the classic Spacewar video game that runs on a repurposed Form 2 SLA 3D printer optical engine, using real galvanometer-controlled lasers as a vector display. The game logic tracks ships, shots, and fragments with OpenGL callbacks for input and physics updates. The game state is rendered as vector shapes and sent to the galvo controller via a custom Haskell USB interface. An OpenGL backend is also provided for home use without hardware.

3m read timeFrom mattkeeter.com
Post cover image
Table of contents
overviewhardwarecode

Sort: