Skip to content

Original SNES Super mario bros made with C++ / OpenGL

Notifications You must be signed in to change notification settings

ValleyJin/super-mario-bros

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Super Mario Bros

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!

Controls

  • AWSD to move
  • LSHIFT to sprint
  • E to enter the level editor

Build

I've only tested this on macOS Catalina but should work in Windows and Linux as well.

Prerequisites:

$ brew install cmake sdl2 sdl2_image sdl2_ttf sdl2_mixer 
$ make build run

# or

$ mkdir build
$ cd build
$ cmake ..
$ make
$ cd ../bin/  
$ ./smb-

Webassembly (thanks @parwenaker!)

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

Screenshots

Game screenshot Loading screenshot Editor screenshot

Level editor

alt text

About

Original SNES Super mario bros made with C++ / OpenGL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 92.6%
  • CMake 7.2%
  • C 0.2%