From e41833987650434326c1938cae808406fa3ba2b8 Mon Sep 17 00:00:00 2001 From: Gabriel Calero Date: Fri, 29 Dec 2017 17:53:27 -0300 Subject: [PATCH] Fix uncompressed textures for android --- libraries/gpu-gles/src/gpu/gles/GLESBackendTexture.cpp | 1 - libraries/image/src/image/Image.cpp | 7 +++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/libraries/gpu-gles/src/gpu/gles/GLESBackendTexture.cpp b/libraries/gpu-gles/src/gpu/gles/GLESBackendTexture.cpp index 97d38bacce..37134e5467 100644 --- a/libraries/gpu-gles/src/gpu/gles/GLESBackendTexture.cpp +++ b/libraries/gpu-gles/src/gpu/gles/GLESBackendTexture.cpp @@ -476,7 +476,6 @@ void copyCompressedTexGPUMem(const gpu::Texture& texture, GLenum texTarget, GLui void GLESVariableAllocationTexture::copyTextureMipsInGPUMem(GLuint srcId, GLuint destId, uint16_t srcMipOffset, uint16_t destMipOffset, uint16_t populatedMips) { uint16_t numMips = _gpuObject.getNumMips(); withPreservedTexture([&] { - qDebug() << "[TEXTURE] is compressed: " << _texelFormat.isCompressed(); if (_texelFormat.isCompressed()) { copyCompressedTexGPUMem(_gpuObject, _target, srcId, destId, numMips, srcMipOffset, destMipOffset, populatedMips); } else { diff --git a/libraries/image/src/image/Image.cpp b/libraries/image/src/image/Image.cpp index f78ed1a583..c42f56d329 100644 --- a/libraries/image/src/image/Image.cpp +++ b/libraries/image/src/image/Image.cpp @@ -689,6 +689,7 @@ void generateMips(gpu::Texture* texture, QImage&& image, const std::atomic } #else texture->setAutoGenerateMips(true); + texture->assignStoredMip(0, image.byteCount(), image.constBits()); #endif } @@ -727,9 +728,15 @@ gpu::TexturePointer TextureUsage::process2DTextureColorFromImage(QImage&& srcIma bool validAlpha = image.hasAlphaChannel(); bool alphaAsMask = false; +#ifndef ANDROID if (image.format() != QImage::Format_ARGB32) { image = image.convertToFormat(QImage::Format_ARGB32); } +#else + if (image.format() != QImage::Format_RGBA8888) { + image = image.convertToFormat(QImage::Format_RGBA8888); + } +#endif if (validAlpha) { processTextureAlpha(image, validAlpha, alphaAsMask);