Repository navigation
Faster loading after missions
The loading screen after a mission is noticeably shorter. Most of the wait came from the game's autosave, which precaches the level's geometry and relights every static mesh vertex. The vertex lighting now runs as native code instead of recompiled x87 code, and only lights the vertices each light actually reaches.
Measured on LowerCity (headless, uncapped frame rate):
| Before | After | |
|---|---|---|
| Geometry precache, per autosave | ~3.0 s | ~1.4 s |
| Level load → end of autosave | 10.8 s | 7.4 s |
The lighting result is bit-identical to the original: SHARK_SELFTEST=1 runs both versions on every call and compared 3026 calls with 0 differences. If you ever suspect a lighting glitch, SHARK_RECOMP_LIGHTING=1 switches back to the recompiled version.
Upgrading
This release changes how the Engine module is compiled, so recompile Engine (about 2–3 minutes), then rebuild the runtime and app. No need to re-run Ghidra:
tools/recomp_compile.sh Engine && tools/recomp_link.sh && tools/make_app.shAs before, this release contains no game files and no prebuilt app; see the README and the v1.0.0 notes for the full setup.