This is a re-implementation of the 1995 PSX game wipEout.
Play here: https://phoboslab.org/wipegame/
More info in my blog: https://phoboslab.org/log/2023/08/rewriting-wipeout
⚠️ Work in progress. Expect bugs.
The game currently supports two different platform-backends: SDL2 and Sokol. The only difference in features is that the SDL2 backend supports game controllers (joysticks, gamepads), while the Sokol backend does not.
# for SDL2 backend apt install libsdl2-dev libglew-dev make sdl
# for Sokol backend apt install libx11-dev libxcursor-dev libxi-dev libasound2-dev make sokol
# for SDL2 backend dnf install SDL2-devel glew-devel make sdl
# for Sokol backend dnf install libX11-devel libXi-devel alsa-lib-devel glew-devel libXcursor-devel make sokol
Currently only the SDL2 backend works. macOS is very picky about the GLSL shader version when compiling with Sokol and OpenGL3.3; it shouldn't be too difficult to get it working, but will probably require a bunch of
#ifdefs for SDL and WASM. PRs welcome!
brew install sdl2 glew make sdl
In theory both backends should work on Windows, but the Makefile is missing the proper compiler flags. Please send a PR!
Install emscripten and activate emsdk, so that
emcc is in your
PATH. The WASM version automatically
selects the Sokol backend. I'm not sure what needs to be done to make the SDL2 backend work with WASM.
This builds the minimal version (no music, no intro) as well as the full version.
The makefile accepts several flags. You can specify them with
fals, default is
false. Whether to include debug symbols in the build.
SOFTWARE, default is
SOFTWARErenderer is very much unfinished and only works with SDL)
false, default is
GLX. Only used for the linux build.
This repository does not contain the assets (textures, 3d models etc.) required to run the game. This code mostly assumes to have the PSX NTSC data, but some menu models from the PC version are required as well. Both of these can be easily found on archive.org and similar sites. The music (optional) needs to be provided in QOA format. The intro video as MPEG1.
The directory structure is assumed to be as follows
./wipegame # the executable ./wipeout/textures/ ./wipeout/music/track01.qoa ./wipeout/music/track02.qoa ...
Note that the blog post announcing this project may or may not provide a link to a ZIP containing all files needed. Who knows!
Optionally, if you want to use a game controller that may not be supported by SDL directly, you can place the gamecontrollerdb.txt in the root directory of this project (along the compiled
Some things from the original game are not yet implemented in this rewrite. This includes
Spline.cpp(the end messages are just shown over the attract mode cameras)
There is none. This code may or may not be based on the source code of the PC (ATI-Rage) version that was leaked in 2022. If it were, it would probably violate copyright law, but it may also fall under fair use ¯\_(ツ)_/¯
Working with this source code is probably fine, considering that this game was originally released 28 years ago (in 1995), that the current copyright holders historically didn't care about any wipEout related files or code being available on the net and that the game is currently not purchasable in any shape or form.
In any case, you may NOT use this source code in a commercial release. A commercial release includes hosting it on a website that shows any forms of advertising.
PS.: Hey Sony! If you're reading this, I would love to work on a proper, officially sanctioned remaster. Please get in touch <3