Skip to content
Rust/WASM port of SuperBrickBreak
Rust Makefile CSS HTML
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
src
static
.gitignore
Cargo.lock
Cargo.toml
LICENSE
Makefile
README.md
rust-toolchain

README.md

SUPER BRICKBREAK - WebAssembly Edition

by Lucas Vieira (luksamuk)
Copyright (c) 2018 Lucas Vieira.

NOTE: This is a direct port of Super BrickBreak. For the original code -- and for actually playing the game --, check out the main JavaScript version.

Fast-paced arkanoid featuring 20+ levels.

(I plan to add a screenshot here as soon as it is feasible, I swear.)

About

This game is a Rust + WebAssembly port of its JavaScript counterpart, which is also a direct port of its C++ counterpart (found in my MiniGames repo), and part of a collection of mini-games I made in the past. This game was originally written in Processing (Java), ported to C++ (OficinaFramework v1.3/OpenGL 3.1), completely ported to JavaScript using the 2D canvas API, and now, ported to Rust and with most of its logic running under the brand new WebAssembly standard. This game is still a very rough prototype and highly incomplete compared to its JavaScript counterpart. You can play it on your browser, if you want to give it a spin.

Goal

The goal of this port is to make full use of WebAssembly and, while it still needs JavaScript interop for some features missing in the stdweb crate, it runs very smoothly.

Compiling

You need Rust Nightly installed in order to build this -- and not only Nightly, but specifically nightly-2018-01-21. You can install it by using

rustup toolchain install nightly-2018-01-21
rustup target add wasm32-unknown-unknown --toolchain nightly

You'll also need cargo-web >= 0.6.8:

cargo install cargo-web

Also, if you're not using rustup, please do, before it's too late for your soul.

Disclaimer and Special Notes

Please don't be a douche; do not deliberately steal this code. You can use the code as a reference for your own game, as long as you respect the license. This game uses GohuFont by Hugo Chargois, ported to TTF by Guilherme Maeda.

To-Do List

  • Basic JavaScript version -- 60%
  • Heads-up display -- 20%
  • Improve collision detection -- 40%
  • Improve overall appearance -- 10%
  • Distribute code in a better way -- 50%
You can’t perform that action at this time.