Skip to content

Commit 6cfb04b

Browse files
bkaradzicCopilot
andcommitted
NativeEngine: cache numMips in cube-container loops, matching sibling upload loops
Use the same or (uint8_t mip = 0, numMips = image->m_numMips; ...) idiom as LoadTextureFromImage / LoadCubeTextureFromImages instead of a standalone cached local, for consistency. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 802dd1e commit 6cfb04b

1 file changed

Lines changed: 3 additions & 4 deletions

File tree

Plugins/NativeEngine/Source/NativeEngine.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -632,10 +632,9 @@ namespace Babylon
632632
// expected face/mip must be present; otherwise the container would leak (the callback
633633
// would never fire) and the texture would be left partially initialized. Validate the
634634
// whole face/mip grid up front and fail fast.
635-
const uint8_t numMips{static_cast<uint8_t>(image->m_numMips)};
636635
for (uint8_t side = 0; side < 6; ++side)
637636
{
638-
for (uint8_t mip = 0; mip < numMips; ++mip)
637+
for (uint8_t mip = 0, numMips = image->m_numMips; mip < numMips; ++mip)
639638
{
640639
bimg::ImageMip imageMip{};
641640
if (!bimg::imageGetRawData(*image, side, mip, image->m_data, image->m_size, imageMip))
@@ -651,13 +650,13 @@ namespace Babylon
651650
// consumed the final upload.
652651
for (uint8_t side = 0; side < 6; ++side)
653652
{
654-
for (uint8_t mip = 0; mip < numMips; ++mip)
653+
for (uint8_t mip = 0, numMips = image->m_numMips; mip < numMips; ++mip)
655654
{
656655
bimg::ImageMip imageMip{};
657656
bimg::imageGetRawData(*image, side, mip, image->m_data, image->m_size, imageMip);
658657

659658
bgfx::ReleaseFn releaseFn{};
660-
if (side == 5 && mip == numMips - 1)
659+
if (side == 5 && mip == image->m_numMips - 1)
661660
{
662661
releaseFn = [](void*, void* userData) {
663662
bimg::imageFree(static_cast<bimg::ImageContainer*>(userData));

0 commit comments

Comments
 (0)