Cracks the DIV-BIZ2 binary format (BGF/BMF) using Division's own reader source (DPL3/BIZREAD.C) as reference: block stream, 14 vertex layouts, pmesh/strip connectivity, LOD nesting, embedded materials. Adds SVT raw-texture decoding, 1995-dialect VGF support (implicit CONNECTION_LIST, header SCALE), and a whole-drive scene audit. 108 of 241 scenes on the Glaze drive are recoverable; 26 are curated into restoration/vwe-archive.html, a self-contained WebGL gallery: Star Trek, Hull Pressure, BattleTech (incl. the polar-map mech lineup), Red Planet's Mars-canal raceway, and the Canyon demos. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
58 lines
2.8 KiB
Markdown
58 lines
2.8 KiB
Markdown
# Scene Restorations
|
||
|
||
Modern re-renderings of the Division dVS scenes recovered from the Glaze
|
||
developer drive (see [HISTORY.md](../HISTORY.md)) and this repo's CONTENT
|
||
tree. The originals ran on Division Ltd.'s pixel-pipeline hardware in
|
||
1994–1997; these tools parse the original data files and re-render them in
|
||
WebGL, in the browser.
|
||
|
||
## Viewers (open in any browser, fully self-contained)
|
||
|
||
- **`vwe-archive.html`** — the Scene Archive: 26 curated scenes across all
|
||
projects — Star Trek (Enterprise-D, Klingon flyby), Hull Pressure (sea
|
||
demos, fish schools, sunken temple), BattleTech (polar map with mech
|
||
lineup, Ravine and desert maps, stadium), Red Planet (Blade arena, the
|
||
Mars canal milestone demo), and the Canyon/Maya-temple Division demos.
|
||
Fly camera: drag to look, WASD to fly, R resets.
|
||
- **`trek-scn.html`** — the original standalone Star Trek restoration
|
||
(TREK.SCN and KLNGVID.SCN).
|
||
|
||
## Toolkit
|
||
|
||
- **`divformats.py`** — parsers for every Division format found on the
|
||
drive: text `VGF`/`VMF` (DIV-VIZ2 geometry/materials, both the 1995
|
||
`VERSION 2:07` and 1996 `02:05` dialects, with header SCALE support),
|
||
binary **`BGF`/`BMF` (DIV-BIZ2)** — the binary block-stream layout was
|
||
recovered from Division's own reader source (`DPL3/BIZREAD.C`, 1994),
|
||
including all 14 vertex layouts, pmesh/tristrip/polygon connectivity,
|
||
LOD blocks (newer writers nest patches inside LODs; the largest LOD is
|
||
taken), and embedded materials/textures/ramps — plus `TGA` and raw `SVT`
|
||
textures, `SPL` splines, and `SCN` scene scripts.
|
||
- **`audit.py`** — scans every `.SCN` on the drive and reports what
|
||
fraction of its geometry survives, and in which format.
|
||
- **`extract_all.py`** — extracts every scene with ≥60 % of its geometry
|
||
recoverable (108 of 241 on the drive; the rest reference lost models)
|
||
into `allscenes.json`, resolving models/materials/textures across the
|
||
drive and this repo's CONTENT dirs.
|
||
- **`gallery_build.py`** — curates scenes from `allscenes.json` into the
|
||
self-contained `vwe-archive.html` (via `gallery_template.html`).
|
||
- **`convert.py` / `viewer_template.html`** — the original single-scene
|
||
Star Trek pipeline.
|
||
|
||
## Rebuild
|
||
|
||
```
|
||
python extract_all.py # requires the sda4/ drive dump beside this repo
|
||
python gallery_build.py
|
||
```
|
||
|
||
## Fidelity notes
|
||
|
||
Faithful: vertices, triangles, material colors and shading ramps, textures,
|
||
fog and light parameters, spline motion, camera start positions. Approximated:
|
||
Division's rasterizer behavior, point sizes, timing (originals ran at 30 Hz).
|
||
Not simulated: event-driven SPECIALFX particles. A few dev scenes had camera
|
||
start positions inside geometry; those get overridden or auto-framed cameras
|
||
(see `START_OVERRIDE` in `gallery_build.py`). Scenes missing one or more
|
||
models from the drive say so in their header.
|