render: opengl and opengles2 renderers try to disable GL_FRAMEBUFFER_SRGB.

Reference Issue #14898.

(cherry picked from commit fc570a1a1c)
This commit is contained in:
Ryan C. Gordon
2026-02-13 14:22:22 -05:00
parent 8f9dd75ead
commit febe5dd3bc
2 changed files with 18 additions and 0 deletions

View File

@@ -43,6 +43,11 @@
#define RENDERER_CONTEXT_MAJOR 2
#define RENDERER_CONTEXT_MINOR 1
// This is always the same number between the various EXT/ARB/GLES extensions.
#ifndef GL_FRAMEBUFFER_SRGB
#define GL_FRAMEBUFFER_SRGB 0x8DB9
#endif
// OpenGL renderer implementation
/* Details on optimizing the texture path on macOS:
@@ -2009,6 +2014,10 @@ static bool GL_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_Pr
goto error;
}
if ((real_major >= 3) || SDL_GL_ExtensionSupported("GL_EXT_framebuffer_sRGB") || SDL_GL_ExtensionSupported("GL_ARB_framebuffer_sRGB")) {
data->glDisable(GL_FRAMEBUFFER_SRGB);
}
// Set up parameters for rendering
data->glMatrixMode(GL_MODELVIEW);
data->glLoadIdentity();

View File

@@ -45,6 +45,11 @@
#define RENDERER_CONTEXT_MAJOR 2
#define RENDERER_CONTEXT_MINOR 0
// This is always the same number between the various EXT/ARB/GLES extensions.
#ifndef GL_FRAMEBUFFER_SRGB
#define GL_FRAMEBUFFER_SRGB 0x8DB9
#endif
/*************************************************************************************************
* Context structures *
*************************************************************************************************/
@@ -2463,6 +2468,10 @@ static bool GLES2_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL
renderer->npot_texture_wrap_unsupported = true;
}
if (SDL_GL_ExtensionSupported("GL_EXT_sRGB_write_control")) {
data->glDisable(GL_FRAMEBUFFER_SRGB);
}
// Set up parameters for rendering
data->glDisable(GL_DEPTH_TEST);
data->glDisable(GL_CULL_FACE);