Marble Marcher is equal parts mesmerising, fascinating, frustrating and educational – a short, free ball-rolling game by CodeParade, you’ve got a ticking timer, a goal, and a procedural fractal landscape to somehow navigate across, sometimes shifting and warping under you. It’s a bit of a technical marvel despite its mechanical simplicity. Below is a brief look at the game, plus an explanation on the collision detection trick that made the game possible in the first place. Grab the game on Itch here – do note you’ll need a beefy GPU to run at higher resolutions.
The GPU-heavy nature of Marble Marcher is thanks to the rendering technique it uses. Ray marching is a seldom-used approach, but it allows for the rendering of hugely complex fractal spaces in realtime, though its cost on GPU scales directly with resolution. 1280 x 720 is about all that my laptop Geforce 1070 can do well. While visually stunning, fractal shapes don’t normally make for the most playable game-spaces, but through a very accurate collision detection system (partially based on the renderer itself), CodeParade found that a simple ball-rolling format worked well.
Even if the underlying math and techniques make your brain sizzle like bacon, it’s mesmerising to look at. Marble Marcher includes about a half hour’s worth of levels to roll through, some of them morphing in real-time. There’s also a screen saver mode so you can ogle the environments that can be generated from iterating on a single, simple source model. Being a nice sort, CodeParade has also released the source code for Marble Marcher here on Github. I’d love to see more done with this – other game types explored, perhaps, or just additional levels, if nothing else.
Marble Marcher is free and here on Itch, although half the appeal (in my opinion, at least) is watching and trying to wrap your brain around CodeParade’s video on ray marching, and the video above for how the physics were resolved.