From c679ce6092ef49dc56b1f1514c1dfee3bfd7642f Mon Sep 17 00:00:00 2001 From: Chris Chreece <68458228+Chreece@users.noreply.github.com> Date: Mon, 5 Oct 2026 22:14:16 +0200 Subject: [PATCH] texture_cache: initialize added depth-overlap subresources (#5229) * texture_cache: initialize added depth-overlap subresources [skip ci] AI-assisted extraction and verification by Codex. Human code/comment review and human-written PR text required before upstream submission. Source integration: e6cf874a170c528068627bb43f2c6bc2e89e4375. Original commits: e78385ae. * tests: remove depth-overlap fixture after review [skip ci] Remove the standalone depth-growth CMake target and modeled regression fixture as requested in upstream PR #5229. The five-line production initialization fix is unchanged. Validation: inspected the exact file diff; no new build or test run because only the standalone test files were removed. The prior fixture results and limitations remain in the earlier commit history. AI-assisted change by Codex. --- src/video_core/texture_cache/texture_cache.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/video_core/texture_cache/texture_cache.cpp b/src/video_core/texture_cache/texture_cache.cpp index bd41a3bc5..63217c61d 100644 --- a/src/video_core/texture_cache/texture_cache.cpp +++ b/src/video_core/texture_cache/texture_cache.cpp @@ -244,6 +244,11 @@ ImageId TextureCache::ResolveDepthOverlap(const ImageInfo& requested_info, Bindi // Inherit image usage auto& new_image = slot_images[new_image_id]; new_image.usage = cache_image.usage; + if (new_info.num_samples == 1 && + (new_info.resources.layers > cache_image.info.resources.layers || + new_info.resources.levels > cache_image.info.resources.levels)) { + RefreshImage(new_image); + } new_image.flags &= ~ImageFlagBits::Dirty; // When creating a depth buffer through overlap resolution don't clear it on first use. new_image.info.meta_info.htile_clear_mask = 0;