ARM64 Android tester v13 reduces CPU work in widescreen layout. Centred artwork and pane-anchored 3D HUD pieces skip unnecessary bounds scans. Remaining scans visit cached vertex runs once instead of searching the same run list for every vertex, and reuse consecutive position matrices. The perspective-aspect threshold is computed once at setup.
This is a source-level optimization with host regression coverage, not a confirmed physical-device FPS gain. Resolution, field of view, frame targets and Android clock policy are unchanged. A broader compiler -O3 experiment exposed optional GL-worker graphics failures on the host and is excluded; existing compiler/float rules are retained.
The tester called v12 "way faster" and supplied sustained nominal-60 FPS 4:3 gameplay (about 12.6–12.8 ms work), while a widescreen log shows roughly 55–60 FPS and 17–18 ms work in slower sections. Those runs were not a controlled same-camera comparison. Clock readings are point samples; 1.6 GHz is not an app-imposed cap. This build adds existing GX vertex/draw/texture/copy/peek timers to the optional performance log to investigate remaining cost.
Device comparison:
- Confirm footer
0.1.57-android-preview.13/ Android version code 15713. - Use 60 FPS, resolution 1, widescreen 16:9. Keep Android performance hints, Request performance headroom, Match display refresh to game FPS, and Use performance CPU cores OFF; Log performance timings ON.
- Compare the same stationary widescreen scene against v12 without recording, screenshots, touches or notifications. Skip movies for steady gameplay testing; check HUD/wipes and title/save/stage loading.
- Return with Back and export the game log before another Play overwrites it. Look for
GX breakdownalongside game/shown FPS, frame work and background handoff time.
Validation: Android debug/optimized release builds; launcher host tests 228/228; 32/64-bit frame-rate and Android scheduler/frame-wait checks passed. All 10 host test groups pass, including the 66 graphics checks, texture/window tests, 1500 bounds-equivalence fixtures and actual widescreen pixel placement at 1x/2x (23 checks each). The prior renderer passes the same placement fixtures. An isolated host CPU bounds benchmark improves large-run scans; its numbers do not predict game FPS. APK preview/source strings, signature, ARM64-only packaging, 16 KiB ELF/APK alignment and no ROM/save/self-test payload verified.
No Android runtime/container/emulator test or benchmark was run, as requested. Actual v13 loading, visual correctness and FPS response require the tester's device. Earlier Android correctness results and tester v12 logs are not v13 runtime validation.
Install over v12 with the same development signing key to retain disc/save data. Uninstalling removes both; export saves first. Android 10+, ARM64, GLES 3.1+, controller; no game data bundled. Separate prerelease; no merge or desktop Stable/Beta changes.
Sources: launcher 0d52e6928113a218e9252e6a56f0468ede0df6ee, game 5bcba187aecb39a0406b333bd386a9bb1e3b3ece. Both Android branches pushed; companion PRs #107 and chasem-dev/sms-pc-port#98.
SHA256: db52e785a1041e70352305a6d76b909133bdafa2f0a440d3a7299118bc0048a6