Check for EXT_texture_sRGB_decode before using enums

This commit is contained in:
baldurk
2018-07-05 15:23:40 +01:00
parent 6f39bfd563
commit b3eeadd256
2 changed files with 9 additions and 4 deletions
+1
View File
@@ -624,6 +624,7 @@ extern bool IsGLES;
EXT_TO_CHECK(99, 99, EXT_raster_multisample) \
EXT_TO_CHECK(99, 30, EXT_texture_swizzle) \
EXT_TO_CHECK(99, 99, KHR_blend_equation_advanced_coherent) \
EXT_TO_CHECK(99, 99, EXT_texture_sRGB_decode) \
/* OpenGL ES extensions */ \
EXT_TO_CHECK(99, 32, EXT_color_buffer_float) \
EXT_TO_CHECK(99, 32, EXT_primitive_bounding_box) \
+8 -4
View File
@@ -658,8 +658,11 @@ void GLResourceManager::PrepareTextureInitialContents(ResourceId liveid, Resourc
// only non-ms textures have sampler state
if(!ms)
{
GL.glGetTextureParameterivEXT(res.name, details.curType, eGL_TEXTURE_SRGB_DECODE_EXT,
(GLint *)&state.srgbDecode);
if(HasExt[EXT_texture_sRGB_decode])
GL.glGetTextureParameterivEXT(res.name, details.curType, eGL_TEXTURE_SRGB_DECODE_EXT,
(GLint *)&state.srgbDecode);
else
state.srgbDecode = eGL_DECODE_EXT;
GL.glGetTextureParameterivEXT(res.name, details.curType, eGL_TEXTURE_COMPARE_FUNC,
(GLint *)&state.compareFunc);
GL.glGetTextureParameterivEXT(res.name, details.curType, eGL_TEXTURE_COMPARE_MODE,
@@ -1861,8 +1864,9 @@ void GLResourceManager::Apply_InitialState(GLResource live, GLInitialContents in
if(!ms)
{
GL.glTextureParameterivEXT(live.name, details.curType, eGL_TEXTURE_SRGB_DECODE_EXT,
(GLint *)&state.srgbDecode);
if(HasExt[EXT_texture_sRGB_decode])
GL.glTextureParameterivEXT(live.name, details.curType, eGL_TEXTURE_SRGB_DECODE_EXT,
(GLint *)&state.srgbDecode);
GL.glTextureParameterivEXT(live.name, details.curType, eGL_TEXTURE_COMPARE_FUNC,
(GLint *)&state.compareFunc);
GL.glTextureParameterivEXT(live.name, details.curType, eGL_TEXTURE_COMPARE_MODE,