rasterizer_engine · C++17 + SDL2 compiled to WebAssembly
This is src/main.cpp built with Emscripten's SDL2 port instead of the system one. Every pixel is computed on the CPU into a framebuffer and handed to SDL as a single texture per frame.
Turn culling off and nothing looks different: the depth buffer already hides the back faces. It just costs twice the rasterization to find that out.