Astrogun is a very cool gaming project that uses a Pi at it’s heart. Looks fun! Via Mostly Technical.
ASTROGUN is an Asteroid shooting game I developed along with Maayan Dreamer for the Jerusalem Mini Maker Faire (the link is in Hebrew), held in June 2014.
The game is pretty simple – the player stands and has to shoot Asteroids that are coming towards him from any direction, before they hit him. A RADAR-like view helps the player locate the Asteroids around him.
The most interesting thing is the display system. We build a HUD – heads up display – which is a display that shows an image overlaid on the background.
In the heart of the Astrogun lies a Raspberry Pi computer. An IMU card connected to it (Sparkfun’s MPU-9150 breakout board) providing it with the ability to sense the orientation the unit’s orientation. Having this information, the Pi is able to draw the various elements (Asteroids, bullets, explosions), as seen from that specific angle. When the player moves, the graphics move ayour’ccordingly, giving the “object in the room” sense.
The display system comprises of two main elements: an LCD panel and a beamsplitter glass (also known as Teleprompter glass). This glass has a unique feature – it is both transmissive (like a window) and reflective (like a mirror). The player, looking through the glass sees both the image behind the glass and the image projected from the LCD.
Anyone who is familiar with basic optics will immediately notice that I’m a little bit cheating here. The system lacks one important component – a collimation lens. In real HUD systems, this lens projects the imager image to infinity, creating an illusion that the graphics is in fact “on” the object the user is looking at. In our case, the short development time hindered us from complex optical structures. Nevertheless, the experience of object-in-the-room is still there, to some degree.
Each Friday is PiDay here at Adafruit! Be sure to check out our posts, tutorials and new Raspberry Pi related products. Adafruit has the largest and best selection of Raspberry Pi accessories and all the code & tutorials to get you up and running in no time!