From b73290ffd601a256a9d4891847ae0329c3781c50 Mon Sep 17 00:00:00 2001 From: Kearwood Gilbert Date: Mon, 23 Mar 2026 23:06:50 -0700 Subject: [PATCH] Fixed bug in mipmap streaming code. Debug font rendering is now working again. --- kraken/resources/texture/KRTexture2D.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/kraken/resources/texture/KRTexture2D.cpp b/kraken/resources/texture/KRTexture2D.cpp index f66cf5f..cbb675e 100755 --- a/kraken/resources/texture/KRTexture2D.cpp +++ b/kraken/resources/texture/KRTexture2D.cpp @@ -103,10 +103,10 @@ bool KRTexture2D::createGPUTexture(int targetLod) break; } - std::vector regions; - regions.resize(mip_count, VkBufferImageCopy{}); + std::vector regions; + regions.resize(mip_count, VkBufferImageCopy{}); int bufferOffset = 0; - for (int mip = min_mip; mip < min_mip + mip_count - 1; mip++) { + for (int mip = min_mip; mip < min_mip + mip_count; mip++) { VkBufferImageCopy& region = regions[mip]; region.bufferOffset = bufferOffset; region.bufferRowLength = 0; @@ -123,9 +123,8 @@ bool KRTexture2D::createGPUTexture(int targetLod) (unsigned int)dimensions.y, (unsigned int)dimensions.z }; - regions.push_back(region); - bufferOffset += getMemRequiredForLod(mip); + bufferOffset += getMemRequiredForLod(mip); } device.streamUpload((void*)buffer, bufferSize, texture.image, regions.data(), regions.size());