EXPORT: 3JS Apocalyptic

Open index.html to run this piece.

Other files are supporting files only. You should not need to manually open any file besides index.html.

This bundle still includes:
- styles/piece.css for editable styling
- scripts/piece.js for editable piece logic
- runtime/ and media/ as portable supporting assets for rehosting

MAKING IT YOUR OWN:
Edit scripts/piece.js and styles/piece.css, then reopen index.html. To publish,
upload this whole folder to any static host — no build step and no server code.

To swap a 3D model or other large asset, replace the file in media/. Once this
folder is hosted, that is all you need. A matching media/<name>.js sits beside it
holding the same bytes as text: that copy exists only so the piece still works
when index.html is double-clicked, because a browser reading a file straight off
disk is not allowed to load a neighbouring file the normal way. Hosted, the real
file is used and the .js copy is ignored — so if you are publishing rather than
browsing offline, you can delete the .js copies to halve the folder size.

This export includes lower-left fullscreen and screenshot controls directly inside index.html.

CAMERA-BASED FEATURES (hand-tracking steering, theremin):
Opening index.html directly (double-clicking it) cannot start hand tracking or
the theremin. Your camera is not the problem: browsers do allow camera access
for a local file. The hand-tracking engine ships as an ES module, and a browser
refuses to load a module from a file on disk, so the engine never starts.
To use camera features, run the included local server instead:
  - macOS/Linux: double-click start-server.command (or run start-server.py)
  - Windows: double-click start-server.bat (or run start-server.py)
This opens the same piece at http://127.0.0.1 in your browser, where camera access
works exactly like the live site. Requires Python 3 (already installed on macOS).

Please note that the following server-dependent features require the CMS and cannot run offline:
- Re-downloading the ZIP bundle with different voice options.
- Interactive comments, version history, prompt metadata, and edit tools.
- Direct links to the immersive VR gallery view (the immersive view has its own standalone export structure instead).

Open index.html after editing those files if you want to create a revised version of the piece.
