Porting to Emscripten
You have a good understanding of the code base, so now it's time to start porting it over with Emscripten. Fortunately, we're able to leverage some of the browser's features to simplify the code and completely remove a third-party library. In this section, we're going to update the code to compile to a Wasm module and JavaScript glue file and update some of the functionality to utilize the browser.
Preparing for porting
The /output-wasm
folder contains the end result, but I recommend that you create a copy of the /output-native
folder so that you can follow along with the porting process. There are VS Code Tasks
set up for both native compilation and Emscripten compilation. If you get stuck, you can always reference the /output-wasm
contents. Make sure you open your copied folder in VS Code (File
| Open
and select your copied folder), otherwise you won't be able to use the Tasks feature.
What's changing?
This game is an ideal candidate for porting because it uses SDL2...