From e2ac80582275e8a8966efd7dd94c0db13c0c7479 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branimir=20Karad=C5=BEi=C4=87?= Date: Fri, 21 Apr 2017 18:19:44 -0700 Subject: [PATCH] texturec: Fixed crash when input texture is already BC encoded. --- tools/texturec/texturec.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tools/texturec/texturec.cpp b/tools/texturec/texturec.cpp index 1898c9a6e..70bcfb697 100644 --- a/tools/texturec/texturec.cpp +++ b/tools/texturec/texturec.cpp @@ -176,7 +176,8 @@ bimg::ImageContainer* convert(bx::AllocatorI* _allocator, const void* _inputData BX_FREE(_allocator, rgbaDst); } - else if (8 != bimg::getBlockInfo(input->m_format).rBits) + else if (!bimg::isCompressed(input->m_format) + && 8 != bimg::getBlockInfo(input->m_format).rBits) { output = bimg::imageAlloc(_allocator, format, uint16_t(mip.m_width), uint16_t(mip.m_height), 0, 1, false, _options.mips); @@ -215,7 +216,7 @@ bimg::ImageContainer* convert(bx::AllocatorI* _allocator, const void* _inputData , mip.m_data , mip.m_width , mip.m_height - , mip.m_width*mip.m_bpp/8 + , mip.m_width*16 , mip.m_format ); bimg::imageEncodeFromRgba32f(_allocator, output->m_data, rgba, dstMip.m_width, dstMip.m_height, format); @@ -283,7 +284,7 @@ bimg::ImageContainer* convert(bx::AllocatorI* _allocator, const void* _inputData , mip.m_data , mip.m_width , mip.m_height - , mip.m_width*mip.m_bpp/8 + , mip.m_width*4 , mip.m_format );