diff --git a/stepmania/src/RageDisplay.cpp b/stepmania/src/RageDisplay.cpp index ab81329742..20895fa227 100644 --- a/stepmania/src/RageDisplay.cpp +++ b/stepmania/src/RageDisplay.cpp @@ -58,6 +58,7 @@ Preference g_fFrameLimitPercent( "FrameLimitPercent", 0.0f ); static const char *PixelFormatNames[] = { "RGBA8", + "BGRA8", "RGBA4", "RGB5A1", "RGB5", diff --git a/stepmania/src/RageDisplay.h b/stepmania/src/RageDisplay.h index fd5faa5813..984485625f 100644 --- a/stepmania/src/RageDisplay.h +++ b/stepmania/src/RageDisplay.h @@ -54,6 +54,7 @@ protected: enum PixelFormat { PixelFormat_RGBA8, + PixelFormat_BGRA8, PixelFormat_RGBA4, PixelFormat_RGB5A1, PixelFormat_RGB5, diff --git a/stepmania/src/RageDisplay_D3D.cpp b/stepmania/src/RageDisplay_D3D.cpp index 3eccc2dbce..f41403bff8 100644 --- a/stepmania/src/RageDisplay_D3D.cpp +++ b/stepmania/src/RageDisplay_D3D.cpp @@ -130,6 +130,8 @@ static const RageDisplay::PixelFormatDesc PIXEL_FORMAT_DESC[NUM_PixelFormat] = { 0x0000FF00, 0x000000FF, 0xFF000000 } + }, { + 0, { 0,0,0,0 } }, { /* A4R4G4B4 */ 16, @@ -177,6 +179,7 @@ static const RageDisplay::PixelFormatDesc PIXEL_FORMAT_DESC[NUM_PixelFormat] = { static D3DFORMAT D3DFORMATS[NUM_PixelFormat] = { D3DFMT_A8R8G8B8, + D3DFMT_UNKNOWN, D3DFMT_A4R4G4B4, D3DFMT_A1R5G5B5, D3DFMT_X1R5G5B5, diff --git a/stepmania/src/RageDisplay_OGL.cpp b/stepmania/src/RageDisplay_OGL.cpp index 72923f69c7..47c6fb9575 100644 --- a/stepmania/src/RageDisplay_OGL.cpp +++ b/stepmania/src/RageDisplay_OGL.cpp @@ -73,6 +73,13 @@ static RageDisplay::PixelFormatDesc PIXEL_FORMAT_DESC[NUM_PixelFormat] = { 0x00FF0000, 0x0000FF00, 0x000000FF } + }, { + /* B8G8R8A8 */ + 32, + { 0x0000FF00, + 0x00FF0000, + 0xFF000000, + 0x000000FF } }, { /* R4G4B4A4 */ 16, @@ -149,6 +156,11 @@ struct GLPixFmtInfo_t { GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE, + }, { + /* R8G8B8A8 */ + GL_RGBA8, + GL_BGRA, + GL_UNSIGNED_BYTE, }, { /* B4G4R4A4 */ GL_RGBA4,