Galaxy Eggbert Documentation

A faithful 3D remake of Speedy Blupi: C++23 · CNA · cna-engine · CMake

What is Galaxy Eggbert?

Galaxy Eggbert is a 3D remake of Speedy Blupi, a platform game by Daniel Roux and EPSITEC that came out for Windows Phone (XNA) in 2013 and was later ported to C++ as Mobile Eggbert. In Galaxy Eggbert, Blupi walks, jumps, swims and drives through hand-built 3D worlds. He collects treasure chests, eggs and keys, avoids mines, lava, saws and enemies, and reaches the exit. The rules, timings, sounds and pictures follow the original. The worlds themselves are new true-3D designs, and Blupi and the objects are 3D models converted from the Ray Dream scenes the original's sprites were rendered from.

The game is written in C++ and is built directly on CNA, a C++ reimplementation of the XNA 4.0 API. Two strict modules of cna-engine sit beside it as helpers (camera, mesh building, GPU meshes, texture regions). The only game target is GalaxyEggbertCNA, and its executable is called GalaxyEggbert.

State as of 2026-11-12 The game is complete and playable. All 78 campaign worlds are built, and every mission has a scripted playthrough that plays it to the end. The desktop (Linux) and WebGL 2 builds pass every automated check. Release 0.4.0 (2026-11-12) is published on GitHub with packages for Windows, Linux, Android and the web (Releases). The game plays in twenty languages, and 2 to 4 players can play Speedy Blupi 2's network game on a local network. The status source is CURRENT.md in the repository; Known Issues summarises what is still open.

Quick Navigation

What the game has today

AreaStatusDetails
CampaignDone Main hub, twelve theme hubs, 64 missions and bonus world 199. Hubs unlock missions as in the original. Campaign & Worlds
Blupi and objects in 3DDone Converted from the original Ray Dream scenes, with a clip for every animation state. Effects stay sprites. Assets
GameplayDone Hazards, enemies, pickups, vehicles, swimming, crates, lifts, doors, switches, bridges, teleporters. Gameplay
HUD, menus, sound, musicDone The original's 640×480 menus scaled to the window, 93 sound channels, ten music tracks.
SavingDone Three players, progress, settings, and resuming an interrupted mission at the moment it stopped. Save Data & Resume
In-game 3D editorDone Ten world slots per player, undo/redo, box fill, copy/paste, play-test, keyboard, touch and gamepad. Editor
Player galaxiesDone Every player can build a galaxy of hubs and missions, with its own progress, and export or import it. Galaxy
DemosDone Main-menu demos, recording, export and import. Demos
3D effectsDone Off, Low, Medium, High and Ultra, from fog and particles up to HDR, shadows, reflections and voxel GI. Graphics
2x texturesDone Sheets at twice the resolution, re-rendered from the Ray Dream scenes, for large displays (desktop). Graphics

Platforms

PlatformStatus
Linux desktop (OpenGL)Verified builds, tests and plays; a relocatable .tar.gz runtime bundle in every release (it needs glibc 2.38 or newer)
Web (Emscripten, WebGL 2)Verified manually in Chrome; a web zip in every release; not part of CI; no multiplayer
AndroidPartial a signed arm64 APK for Android 7.0+ in every release; played on a phone, but little tested on devices
WindowsPackaged a MinGW cross-build zip in every release since 0.1.0, played under wine; not yet tested on Windows itself

Details: Platform Support.

Technology Stack

ComponentTechnology
Language and buildC++23, CMake ≥ 3.23 (the game itself declares 3.21; CNA's dependencies need 3.23)
EngineCNA: the XNA 4.0 API in C++ on SDL3 and SDL3_mixer, with several graphics back ends chosen by CNA_GRAPHICS_RENDERER
Helperscna-engine strict modules CnaEngine::Core and CnaEngine::Graphics (until 2026-10-20 the helper library easy-3d)
Reference gameMobile Eggbert, the read-only C++ port of Speedy Blupi and the authority for gameplay and assets
TestsGoogleTest and the Verify* executables in ctest, golden frames, scripted playthroughs
ToolsPython world generators and checkers, Ray Dream → model converters
LicenceThe game: GNU GPL v3. This website: MIT.

About this site

The site is plain static HTML in the web/ directory of the galaxy-eggbert repository. .github/workflows/pages.yml deploys it to GitHub Pages whenever web/ changes on develop. The sidebar, the previous/next links and the search index are generated by web/tools/update_site.py; run it after adding or renaming a page. The pages describe the state of 2026-11-10. For anything newer, CURRENT.md and docs/handbook/ in the repository are the authority.