Commit e92a0428 authored by Sam Lantinga's avatar Sam Lantinga

Fixed screen texture format on Android

I think this also fixes some of the red/blue channel swap bugs reported on iPhone.
parent 0d999f79
...@@ -118,7 +118,8 @@ SDL_RenderDriver GL_ES_RenderDriver = { ...@@ -118,7 +118,8 @@ SDL_RenderDriver GL_ES_RenderDriver = {
SDL_PIXELFORMAT_ABGR4444, SDL_PIXELFORMAT_ABGR4444,
SDL_PIXELFORMAT_ABGR1555, SDL_PIXELFORMAT_ABGR1555,
SDL_PIXELFORMAT_BGR565, SDL_PIXELFORMAT_BGR565,
SDL_PIXELFORMAT_BGR24, SDL_PIXELFORMAT_RGB24,
SDL_PIXELFORMAT_BGR888,
SDL_PIXELFORMAT_ABGR8888}, SDL_PIXELFORMAT_ABGR8888},
0, 0,
0} 0}
...@@ -380,11 +381,12 @@ GLES_CreateTexture(SDL_Renderer * renderer, SDL_Texture * texture) ...@@ -380,11 +381,12 @@ GLES_CreateTexture(SDL_Renderer * renderer, SDL_Texture * texture)
GLenum result; GLenum result;
switch (texture->format) { switch (texture->format) {
case SDL_PIXELFORMAT_BGR24: case SDL_PIXELFORMAT_RGB24:
internalFormat = GL_RGB; internalFormat = GL_RGB;
format = GL_RGB; format = GL_RGB;
type = GL_UNSIGNED_BYTE; type = GL_UNSIGNED_BYTE;
break; break;
case SDL_PIXELFORMAT_BGR888:
case SDL_PIXELFORMAT_ABGR8888: case SDL_PIXELFORMAT_ABGR8888:
internalFormat = GL_RGBA; internalFormat = GL_RGBA;
format = GL_RGBA; format = GL_RGBA;
......
...@@ -124,7 +124,7 @@ Android_VideoInit(_THIS) ...@@ -124,7 +124,7 @@ Android_VideoInit(_THIS)
SDL_DisplayMode mode; SDL_DisplayMode mode;
/* Use a fake 32-bpp desktop mode */ /* Use a fake 32-bpp desktop mode */
mode.format = SDL_PIXELFORMAT_RGB888; mode.format = SDL_PIXELFORMAT_BGR888;
mode.w = iScreenWidth; mode.w = iScreenWidth;
mode.h = iScreenHeight; mode.h = iScreenHeight;
mode.refresh_rate = 0; mode.refresh_rate = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment