From 3d09c764f8082281c6a38af44d8c4263a4f690b2 Mon Sep 17 00:00:00 2001 From: mchughalex <25671999+mchughalex@users.noreply.github.com> Date: Tue, 21 Jul 2026 06:06:18 +0100 Subject: [PATCH] render: stamp the texture-store LRU clock at commit so fresh decodes survive the eviction latch --- src/skate3_native_scene_gpu.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/skate3_native_scene_gpu.cpp b/src/skate3_native_scene_gpu.cpp index 83cecde..4c74121 100644 --- a/src/skate3_native_scene_gpu.cpp +++ b/src/skate3_native_scene_gpu.cpp @@ -4795,6 +4795,14 @@ void PrewarmCommit(const NativeGuestOutputRenderContext& context, t.gt.fetch_words[5]); } } + // Fresh commits must enter the store with a live LRU stamp: an + // unstamped (0) clock sorts as the oldest entry, and with the store + // over cap the eviction latch would retire brand-new decodes before + // their first draw ever stamps them - a commit/evict/re-decode loop + // that starved dense areas of all new content. + if (t.gt.last_used_frame == 0) { + t.gt.last_used_frame = frame_number; + } g_r.tex_store.emplace(t.words_key, t.gt); continue; }