ioq3.js is a simple port of ioquake3 to the web using Emscripten. It was heavily inspired by inolen's quakejs, but aims to be simpler and up-to-date with the latest Emscripten features.
You can play the demo version here.
make PLATFORM=js EMSCRIPTEN=/path/to/emscriptenBinaries will be placed in build/release-js-js.
Data is preloaded using Emscripten's virtual filesystem. So, if you want to play, you have the provide the official (or demo) PK3's. Here's how it would work for retail Q3:
python /path/to/emscripten/tools/file_packager.py emscripten_data.data --preload baseq3 > emscripten_data.jsAnd add this to the build/release-js-js/ioquake3.html file:
<script async type="text/javascript" src="emscripten_data.js"></script>- Run
python -m SimpleHTTPServer 8888inbuild/release-js-js - Load localhost:8888/ioquake3.html in your browser
- Networking
- Drop LEGACY_GL_EMULATION