From 1fb663b429c3c56de2e8e1c1bb99aac8bdf659f2 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Fri, 7 Nov 2025 11:13:50 -0800
Subject: [PATCH] Make sure that SDL_PIXELFORMAT_ARGB8888 is the first texture
format for OpenGL
Fixes https://github.com/libsdl-org/SDL/issues/1440
---
src/render/opengl/SDL_render_gl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/render/opengl/SDL_render_gl.c b/src/render/opengl/SDL_render_gl.c
index 31dbd921d6d2f..ec2e9b651647a 100644
--- a/src/render/opengl/SDL_render_gl.c
+++ b/src/render/opengl/SDL_render_gl.c
@@ -1926,20 +1926,20 @@ static bool GL_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_Pr
}
// RGBA32 is always supported with OpenGL
- SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBA32);
if (bgra_supported) {
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_BGRA32);
}
+ SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBA32);
// Check for shader support
data->shaders = GL_CreateShaderContext();
SDL_LogInfo(SDL_LOG_CATEGORY_RENDER, "OpenGL shaders: %s",
data->shaders ? "ENABLED" : "DISABLED");
if (GL_SupportsShader(data->shaders, SHADER_RGB)) {
- SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBX32);
if (bgra_supported) {
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_BGRX32);
}
+ SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBX32);
} else {
SDL_LogInfo(SDL_LOG_CATEGORY_RENDER, "OpenGL RGB shaders not supported");
}