diff options
author | Antti Määttä <antti.maatta@qt.io> | 2019-04-25 12:07:39 +0300 |
---|---|---|
committer | Antti Määttä <antti.maatta@qt.io> | 2019-04-26 11:59:33 +0000 |
commit | 57c4198a5bf84d12784c4b7a26438d4e635716bb (patch) | |
tree | 62f4e1885eb7522c0bfa80f5938ccd333df51178 /src/Runtime | |
parent | bac2c7d3d3e9ef62891d60a6a9077b3d66e63993 (diff) |
Convert RGBA64 images to RGBA8 when loading
Task-number: QT3DS-3354
Change-Id: I68396ec7ccf9a99820edd7b7501ee39191cbef63
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'src/Runtime')
-rw-r--r-- | src/Runtime/Source/runtimerender/resourcemanager/Qt3DSRenderLoadedTexture.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/Runtime/Source/runtimerender/resourcemanager/Qt3DSRenderLoadedTexture.cpp b/src/Runtime/Source/runtimerender/resourcemanager/Qt3DSRenderLoadedTexture.cpp index 3365a2ce..b1993021 100644 --- a/src/Runtime/Source/runtimerender/resourcemanager/Qt3DSRenderLoadedTexture.cpp +++ b/src/Runtime/Source/runtimerender/resourcemanager/Qt3DSRenderLoadedTexture.cpp @@ -50,6 +50,17 @@ SLoadedTexture *SLoadedTexture::LoadQImage(const QString &inPath, QT3DSI32 flipV SLoadedTexture *retval(NULL); NVAllocatorCallback &alloc(fnd.getAllocator()); QImage image(inPath); + const QImage::Format format = image.format(); + switch (format) { + case QImage::Format_RGBA64: + image = image.convertToFormat(QImage::Format_RGBA8888); + break; + case QImage::Format_RGBX64: + image = image.convertToFormat(QImage::Format_RGBX8888); + break; + default: + break; + } image = image.mirrored(); image = image.rgbSwapped(); retval = QT3DS_NEW(alloc, SLoadedTexture)(alloc); |