forked from Mirrorlandia_minetest/irrlicht
COpenGLCoreTexture: fix abort when format not supported
This commit is contained in:
parent
46542793d6
commit
61682104df
@ -54,6 +54,8 @@ public:
|
|||||||
KeepImage = Driver->getTextureCreationFlag(ETCF_ALLOW_MEMORY_COPY);
|
KeepImage = Driver->getTextureCreationFlag(ETCF_ALLOW_MEMORY_COPY);
|
||||||
|
|
||||||
getImageValues(images[0]);
|
getImageValues(images[0]);
|
||||||
|
if (!InternalFormat)
|
||||||
|
return;
|
||||||
|
|
||||||
const core::array<IImage*>* tmpImages = &images;
|
const core::array<IImage*>* tmpImages = &images;
|
||||||
|
|
||||||
@ -160,6 +162,7 @@ public:
|
|||||||
if ( !Driver->getColorFormatParameters(ColorFormat, InternalFormat, PixelFormat, PixelType, &Converter) )
|
if ( !Driver->getColorFormatParameters(ColorFormat, InternalFormat, PixelFormat, PixelType, &Converter) )
|
||||||
{
|
{
|
||||||
os::Printer::log("COpenGLCoreTexture: Color format is not supported", ColorFormatNames[ColorFormat < ECF_UNKNOWN?ColorFormat:ECF_UNKNOWN], ELL_ERROR);
|
os::Printer::log("COpenGLCoreTexture: Color format is not supported", ColorFormatNames[ColorFormat < ECF_UNKNOWN?ColorFormat:ECF_UNKNOWN], ELL_ERROR);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
GL.GenTextures(1, &TextureName);
|
GL.GenTextures(1, &TextureName);
|
||||||
@ -503,7 +506,8 @@ protected:
|
|||||||
if ( !Driver->getColorFormatParameters(ColorFormat, InternalFormat, PixelFormat, PixelType, &Converter) )
|
if ( !Driver->getColorFormatParameters(ColorFormat, InternalFormat, PixelFormat, PixelType, &Converter) )
|
||||||
{
|
{
|
||||||
os::Printer::log("getImageValues: Color format is not supported", ColorFormatNames[ColorFormat < ECF_UNKNOWN?ColorFormat:ECF_UNKNOWN], ELL_ERROR);
|
os::Printer::log("getImageValues: Color format is not supported", ColorFormatNames[ColorFormat < ECF_UNKNOWN?ColorFormat:ECF_UNKNOWN], ELL_ERROR);
|
||||||
// not quitting as it will use some alternative internal format
|
InternalFormat = 0;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IImage::isCompressedFormat(image->getColorFormat()))
|
if (IImage::isCompressedFormat(image->getColorFormat()))
|
||||||
|
Loading…
Reference in New Issue
Block a user