Scaffold vpinball-wasm: Emscripten port of Visual Pinball
CI / Build wasm engine (push) Failing after 3m30s
CI / Publish to npm registry (push) Skipped

Build scripts, CMake/source patches, npm packaging, and a Gitea CI
workflow to compile the real Visual Pinball engine (SDL3 + WebGL2 +
libwinevbs for real VBScript) to WebAssembly.

The patches are validated end-to-end: the patched engine boots in a
real browser, loads a real .vpx table, compiles its real GLSL shaders,
computes environment map radiance, initializes physics, and starts the
VBScript engine, before hanging on the one deliberately-deferred piece
of work (game loop rewrite around emscripten_set_main_loop), documented
in the README's roadmap.
This commit is contained in:
2026-08-22 14:30:14 +02:00
commit 0a63835689
18 changed files with 1151 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
{
"name": "@valknar/vpinball-wasm",
"version": "0.0.0",
"description": "Visual Pinball's engine compiled to WebAssembly - real .vpx tables, real VBScript, WebGL2 rendering, in the browser",
"license": "SEE LICENSE IN LICENSE",
"type": "module",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist/",
"package/assets/",
"README.md",
"LICENSE"
],
"scripts": {
"build:wrapper": "tsc -p package/tsconfig.json"
},
"publishConfig": {
"registry": "https://dev.pivoine.art/api/packages/valknar/npm/"
},
"repository": {
"type": "git",
"url": "https://dev.pivoine.art/valknar/vpinball-wasm.git"
},
"devDependencies": {
"typescript": "^5.6.0"
}
}