Files
TeslaRel410/restoration/README.md
T
CydandClaude Fable 5 5e9f191e0b Add TREK.SCN restoration: converter and WebGL viewer
Parses the DIV-VIZ2 formats (VGF geometry, VMF materials, TGA
textures, SPL splines, SCN scenes) from the STDAVE directory of the
Glaze drive and re-renders VWE's unreleased 1996 Star Trek pod
scenes in a self-contained WebGL page: the Enterprise-D among
drifting starfields (TREK.SCN) and the Klingon flyby (KLNGVID.SCN).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 15:19:52 -05:00

43 lines
2.0 KiB
Markdown

# TREK.SCN Restoration
A modern re-rendering of the unreleased **Star Trek** simulator-pod scenes found
in the `STDAVE` directory of the Glaze developer drive (see
[HISTORY.md](../HISTORY.md)). The original scenes ran on Division Ltd.'s dVS
pixel-pipeline hardware in 1996; this restoration parses the original data
files and re-renders them in WebGL, in the browser.
## Files
- **`trek-scn.html`** — the finished, self-contained viewer (open in any
browser; no server needed). Renders `TREK.SCN` (the Enterprise-D among
three parallax layers of drifting stars) and `KLNGVID.SCN` (a Klingon
cruiser at rest while two more drift past on spline paths). Fly camera:
drag to look, WASD to fly.
- **`convert.py`** — the converter. Parses the DIV-VIZ2 text formats from
the drive dump (expects it at `..\sda4\STDAVE`) and emits `trekdata.json`:
- `.VGF` geometry (vertex pools + polygon connection lists, converted from
Wavefront OBJ in 1996 by Ken Olsen's `obj2vgf`)
- `.VMF` materials (ambient/diffuse/emissive, shading ramps, texture
bit-slice references)
- `.TGA` textures (decoded and re-encoded as PNG data URIs)
- `.SPL` splines (starfield drift paths, ship flyby paths)
- `.SCN` scene scripts (camera, lights, fog, object placements)
- **`viewer_template.html`** — the viewer source with a `%%DATA%%`
placeholder; `convert.py`'s JSON output is injected to produce
`trek-scn.html`.
## Rebuild
```
python convert.py
python -c "open('trek-scn.html','w',encoding='utf-8').write(open('viewer_template.html',encoding='utf-8').read().replace('%%DATA%%',open('trekdata.json',encoding='utf-8').read()))"
```
## Fidelity notes
Faithful: vertices, triangles, material colors, textures, fog and light
parameters, star paths and layer speeds, camera start positions — all from
the original files. Approximated: Division's shading ramps and rasterizer
behavior, point-sprite star sizes, ship motion timing (original simulation
ran at 30 Hz). Not simulated: the event-driven SPECIALFX particle effects.