mirror of
https://github.com/Cesarus85/ringfall-mjolnir-vr.git
synced 2026-10-26 06:26:41 +01:00
Keep synchronous cached CE pixels and hardware headers at stable addresses outside the fixed Xbox arena, bounded to 128 MiB and 8192 entries. Only older-frame textures can be evicted; unregister bindings, GPU copies and channel annotations before freeing, including map/bitmap teardown and flush. Preserve the original readers, conversion, normal GPU caching and HUD replacement behavior. Refresh Android GL shadow state before each draw. Keep the player-tested Android streaming geometry bypass and its regression tests, since current upstream main does not contain that fix yet. Desktop and web preserve their cache, upload and draw-state behavior. No fullscreen, simulation, networking or map-format changes are included. The engine-owned bitmap getter and teardown require small source hooks, each marked port:. The renderer admits heap pixels only through a registered header and validates the resource extent against its allocation. Diagnostics are limited to unload summaries and the first allocation warning per lifetime. Device evidence: the tester reports correct rendering and stable FPS, with zero allocation failures, fallback substitutions or evictions across four CE visits on Mali-G615 and 87.5 MiB peak residency. Local tests cover stable uploads, bounds, OOM, frame locks, eviction, cleanup, HUD residency, reduced diagnostics, normal write tracking, Android-only state refresh and geometry streaming. All 30 upstream-focused checks passed before final CI validation. Full Android/web builds require CI because local targets are unavailable. No fork packaging, branding, map adapters or unrelated changes are included. Player-Note: Fix Android Custom Edition texture corruption and repeated cache upload hitches. Player-Note: Prevent stretched or missing geometry on Android by streaming geometry directly. (cherry picked from commit 4ac4685b96c39b20491095579ce469f8afcd2d3c)