Skip to content

OpenUAStudio Retail Indexed Viewer v2.0.0

Latest

Choose a tag to compare

@andreipemberton andreipemberton released this 16 Aug 02:19
· 2 commits to main since this release
f554acd

OpenUAStudio Retail Indexed Viewer v2.0.0

Version 2.0.0 replaces the viewer's approximate treatment of important indexed
effects with a source-derived reconstruction designed for faithful Urban
Assault and Metropolis Dawn asset inspection.

Highlights

  • Adds the Textured - Retail indexed (reconstructed) rendering path.
  • Preserves palette indices through model rendering and resolves the final
    display through the matching local palette.
  • Uses the local game's SHADERMP and TRACYRMP tables with recorded source
    hashes and fail-closed profile resolution.
  • Reconstructs source material dispatch, constant-brightness conversion,
    whole-face culling, opaque occlusion, and transparent publish-depth/LIFO
    replay.
  • Improves the Taerkasten Hauptstation lightning without conflating it with
    ordinary RGB additive blending.
  • Preserves the Zeppelin's clear-TRACY propellers separately from the
    Mnosjetz's flat-TRACY propellers.

Flat/LUM-TRACY destination selector

Snapshot Studio now exposes two clearly separated policies:

  • Live framebuffer - retail is the canonical default. Each effect texel
    reads the destination palette index actually present beneath it.
  • Force palette row - diagnostic exposes all 256 destination rows for table
    analysis. Forced output is labeled noncanonical in the UI, suggested
    filename, effective renderer identity, and export manifests.

Export integrity and provenance

  • Exact indexed export refuses incomplete or ambiguous source profiles instead
    of silently saving an OpenUA preview fallback.
  • Batch manifests distinguish requested and effective renderer/destination
    policies and record palette, remap-table, and index-buffer hashes.
  • Skip existing refuses populated output whose prior run_info.json cannot
    prove the same renderer and destination profile.
  • PNG promotion is atomic, retained older files remain explicitly unverified,
    and ZIP creation follows the manifest whitelist.
  • Installed game data remains a read-only local input and is not included in
    this release.

Validation

  • Focused indexed/TRACY/canonical/UI gate: 77/77 passed.
  • Python compilation: 12/12 touched Python files passed.
  • git diff --check: passed.
  • Full headless discovery: 457 run / 442 passed / 8 failed / 6 errors / 1
    skipped
    , exactly matching the established pre-release baseline. The
    remaining failures and errors are inherited, unrelated editor and window
    contract cases; the skip is the unavailable UA_RC1 Set1 corpus.

Upstream collaboration

This is an unofficial, GPL-3.0-licensed fork. The original OpenUAStudio creator
and current upstream maintainers are explicitly welcome to reuse, adapt,
cherry-pick, or merge any part of this work under the repository's license. If
they would like these changes proposed back to upstream main, they are also
welcome to request an upstream pull request from this fork; we will gladly
prepare one for their review. This invitation does not imply upstream
endorsement or automatic acceptance—the upstream maintainers retain complete
control over their project and merge decisions.

Reconstruction boundary

This is a source-derived retail indexed-color reconstruction, not a claim of
cycle-accurate emulation. The documented remaining limits primarily concern
instruction-identical fixed-point whole-polygon span walking, depth-map cluster
stepping, and general distant-world depth fade. See
RETAIL_INDEXED_RENDERER.md
for the full fidelity boundary and reproducible validation commands.

See the complete
CHANGELOG.md
for the detailed v2.0.0 change record.