Made for educational porpuses. No game-engine, only C++ and SDL2.
I've used an ECS architecture taking cues from: https://github.com/redxdev/ECS
- Author: Fernando Raviola
- Twitter: @fernandoraviola
Contributions are welcomed!
- Try it online! (wasm): https://feresr.github.io/smb/smb-.html
- Article (medium.com)
- Video Demo (youtube.com)
AWSD
to moveLSHIFT
to sprintE
to enter the level editor
I've only tested this on macOS Catalina but should work in Windows and Linux as well.
$ brew install cmake sdl2 sdl2_image sdl2_ttf sdl2_mixer
$ make build run
# or
$ mkdir build
$ cd build
$ cmake ..
$ make
$ cd ../bin/
$ ./smb-
Either install emsdk and run
$ mkdir build
$ cd build
$ emcmake cmake ..
$ make
or build with Docker
$ docker run --rm -v $(pwd):/src -u $(id -u):$(id -g) emscripten/emsdk emcmake cmake -S . -B build
$ docker run --rm -v $(pwd):/src -u $(id -u):$(id -g) emscripten/emsdk cmake --build build
Start a webserver in the bin folder
$ cd bin
$ python -m SimpleHTTPServer 8000
$ open http://localhost:8000/smb-.html