diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index f335009d0..b5297e76b 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h | |||
| @@ -1359,6 +1359,12 @@ ImageId TextureCache<P>::JoinImages(const ImageInfo& info, GPUVAddr gpu_addr, VA | |||
| 1359 | ScaleDown(new_image); | 1359 | ScaleDown(new_image); |
| 1360 | } | 1360 | } |
| 1361 | 1361 | ||
| 1362 | std::ranges::sort(overlap_ids, [this](const ImageId lhs, const ImageId rhs) { | ||
| 1363 | const ImageBase& lhs_image = slot_images[lhs]; | ||
| 1364 | const ImageBase& rhs_image = slot_images[rhs]; | ||
| 1365 | return lhs_image.modification_tick < rhs_image.modification_tick; | ||
| 1366 | }); | ||
| 1367 | |||
| 1362 | for (const ImageId overlap_id : overlap_ids) { | 1368 | for (const ImageId overlap_id : overlap_ids) { |
| 1363 | Image& overlap = slot_images[overlap_id]; | 1369 | Image& overlap = slot_images[overlap_id]; |
| 1364 | if (True(overlap.flags & ImageFlagBits::GpuModified)) { | 1370 | if (True(overlap.flags & ImageFlagBits::GpuModified)) { |