Show HN: Nostalgia Rider

(nostalgiarider.com)

3 points | by qvq 5 hours ago ago

1 comments

  • qvq 5 hours ago ago

    Technical details:

    I did pay attention to performance, even if it's overkill. Uses Zig compiled to WASM for the game state. Rendering is done in JS and WebGL reading from SharedArrayBuffer. I didn't think a single language was worth the boundary trampolining and extra tooling.

    I tried to get muti-threading to work but that seems to require multiple web workers running instances of the WASM binary. It started to make other things more complicated (probably because I couldn't find the right level of abstraction) so I gave up. Running WASM in a single worker, off the main thread, is good enough for now.