From 141eeb4e87295ac50be3b8ad65ebeea41faf6033 Mon Sep 17 00:00:00 2001 From: Swung0x48 Date: Mon, 5 Jan 2026 09:30:16 +0800 Subject: [PATCH] [Optimize] (MG_Backend/DirectGLES): use texture target instead of upload target --- MobileGL/MG_Backend/DirectGLES/Managers.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/MobileGL/MG_Backend/DirectGLES/Managers.cpp b/MobileGL/MG_Backend/DirectGLES/Managers.cpp index 9dcea1b1..47592673 100644 --- a/MobileGL/MG_Backend/DirectGLES/Managers.cpp +++ b/MobileGL/MG_Backend/DirectGLES/Managers.cpp @@ -386,15 +386,11 @@ namespace MobileGL::MG_Backend::DirectGLES { errorLopper.Clear(); MG_External::GLES::glBindBuffer(GL_PIXEL_UNPACK_BUFFER, 0); + auto textureTarget = stateTextureObject->GetTarget(); // TODO: handle more texture types - switch (uploadTarget) { - case TextureUploadTarget::Texture2D: - case TextureUploadTarget::CubeMapPositiveX: - case TextureUploadTarget::CubeMapNegativeX: - case TextureUploadTarget::CubeMapPositiveY: - case TextureUploadTarget::CubeMapNegativeY: - case TextureUploadTarget::CubeMapPositiveZ: - case TextureUploadTarget::CubeMapNegativeZ: + switch (textureTarget) { + case TextureTarget::Texture2D: + case TextureTarget::TextureCubeMap: { MG_External::GLES::glTexImage2D(glUploadTarget, static_cast(level), glInternalFormat, static_cast(levelTexelSize.x()), @@ -402,7 +398,7 @@ namespace MobileGL::MG_Backend::DirectGLES { glType, pData); break; } - case TextureUploadTarget::Texture3D: { + case TextureTarget::Texture3D: { MG_External::GLES::glTexImage3D(glUploadTarget, static_cast(level), glInternalFormat, static_cast(levelTexelSize.x()), static_cast(levelTexelSize.y()), @@ -412,7 +408,7 @@ namespace MobileGL::MG_Backend::DirectGLES { break; } default: { - MGLOG_E("Unhandled texture upload target %s", MG_Util::ConvertTextureUploadTargetToString(uploadTarget).c_str()); + MGLOG_E("Unhandled texture target %s", MG_Util::ConvertTextureTargetToString(textureTarget).c_str()); } } MGLOG_D("Regenerated mipmap level %d for texture with ID: %u", level, m_backendTextureId);