Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

TuxMath and TuxTyping are FOSS games written with SDL.

Giving your experience with porting Wolfenstein 3D SDL to emscripten, would it be easier to rewrite TuxMath given the exercise XML files or port it to WASM/emscripten (and emscripten-forge)?

Notably, the TuxMath RPM currently segfaults with recent Fedora but the Flatpak (which presumably statically-ships it's own copy of SDL) does work fine. https://flathub.org/apps/details/com.tux4kids.tuxmath https://github.com/tux4kids/tuxmath

(Other someday priorities: Looking at SensorCraft, wanting to port it to (JupyterLite WASM) notebooks w/ jupyter-book)

The latest Wolfenstein where you're girls that respawn only if tagteam is good, too; Wolfenstein: Youngblood. https://en.wikipedia.org/wiki/Wolfenstein



Porting SDL(2) games with Emscripten to get an actual WASM output is pretty straightforward. Getting the game to run properly is another story. If the game has additional dependencies, you have to build them separatly with Emscripten and link them in finally. Heavy use of the filesystem has to be commented out as well (browser tab is a sandbox).


emscripten-forge builds a ~condaenv of recipes with empack; like conda-forge: https://github.com/emscripten-forge/empack

There's not yet an SDL recipe yet: https://github.com/emscripten-forge/recipes/tree/main/recipe...

Re: emscripten fs implementations: https://github.com/emscripten-core/emscripten/issues/15041#i... https://github.com/jupyterlite/jupyterlite/issues/315


In my experience the most annoying part porting a rudimentary SDL C game to wasm via emscripten is getting the fullscreen handling to work right, especially across desktop and mobile browsers.

Otherwise it's pretty straightforward. You may even get away with the only code change being integrating the emscripten event loop...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: