A collection of example projects demonstrating features of the 32blit SDK.
To get started writing your own game, you should use the 32blit boilerplate - https://github.com/32blit/32blit-boilerplate/
Demonstrates the configuration of multiple synth channels and playing a multi-channel melody.
Demonstrate playing a raw, headerless, 22,050Hz wave file using 32blit's wave_buffer_callback
.
A demo implementation of "Doom Fire", as documented by Fabien Sanglard: http://fabiensanglard.net/doom_fire_psx/
A demo implementation of the fizzle-fade transition, as documented by Fabien Sanglard: https://fabiensanglard.net/fizzlefade/
Uses a linear-feedback shift-register to produce random-looking values for pixel locations, making the screen "fizzle" from one colour to another, pixel-by-pixel in an apparently random order.
An example of a flight simulator using mode7 style graphics.
A playable game of asteroids.
Shows how to decode a JPEG image and display it on the screen.
The 32blit logo being animated on-screen as swirling particles.
Wat?
Demonstrates the reading back of ".blit" metadata in an application.
Demonstrates playing a 22,050Hz, mono .mp3 file loaded from the SD card.
A basic demonstration of the 32blit multiplayer functionality.
If you're using 32blit handhelds you will need a microUSB to microUSB OTG cable. For example: https://www.amazon.co.uk/gp/product/B00RX1H9ZS/
The classic palette cycling technique, combining a static sprite with a rotating set of colours in the palette in order to give the appearance of animation.
Another classic technique, recoloring sprites on the fly by swapping their palette before they are drawn.
A demonstration of various particle effects.
A mini sequencer.
- DPad Left/Right: Move cursor
- DPad Up/Down: Change note (and play preview)
- A: Play/Pause
- B: Mute/Unmute note
- Y: Return to start
A tile-based platformer demo.
- DPad Left/Right: Move player
- DPad Up/Down: Climb ladder or swim up/down
- A: Jump
A demonstration of the 32blit profiler showing the time taken to run various drawing functions.
- DPad Left/Right: Switch page
- DPad Up/Down: Increase/decrease profiler rows
- A: Enable/disable graph
- B: Enable/disable labels
- Y: Change time base
- Home: Log to CDC
A playable raycasting-based bug-zapper game.
- DPad Left/Right: Turn player
- DPad Up/Down: Walk forwards/backwards
- A: Use bug spray
A basic example of the rotozoom effect.
A basic demo of the save/load functionality.
A playable jumping game. Outrun the rising water.
- DPad Left/Right: Move left/right, cling to walls
- DPad Up/Down: Climb up
- A: Jump
A basic demo of serial debug.
Some messy Shoot 'em Up sprites and graphics that never became a working game.
A basic demo of loading and displaying sprites at different scales.
A basic demo of text rendering showing clipping, wrapping, and alignment.
A series of scanline-rendering effects applied to a tilemap.
- DPad Up/Down: Switch effect.
A tilt-sensing sand demo. Requires hardware with a tilt sensor.
A basic demo of timer functionality, illustrating a timer callback.
A vertical scanline rendered zooming tunnel effect.
A visual demo of various animation easing functions.
- DPad Left/Right: Select previous/next function
- A: Start/pause animation
A simple demo of multiple tweening functions used on an object.
A complete streaming Voxel rendering engine.
- DPad Up/Down: Move forwards/backwards
- Joystick: Move
- A: Switch map
A basic demo of the built-in audio waveforms.