From 98f0d881978eb1c35c9bc4ab7d951e22f873102b Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Fri, 21 May 2010 22:15:35 +0200 Subject: Fixed RGB vs BGR in texture loading. --- engine/texturesdl.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'engine/texturesdl.cpp') diff --git a/engine/texturesdl.cpp b/engine/texturesdl.cpp index 8e112ef..bab760b 100644 --- a/engine/texturesdl.cpp +++ b/engine/texturesdl.cpp @@ -1,6 +1,6 @@ -#include #include #include +#include #include "texturesdl.h" TextureSDL::TextureSDL(const char* filename) { @@ -8,7 +8,13 @@ TextureSDL::TextureSDL(const char* filename) { width = image->w; height = image->h; - byte_per_pixel = image->format->BytesPerPixel; + + if(image->format->BytesPerPixel == 4) { + format = image->format->Bshift ? GL_RGBA : GL_BGRA; + } else { + format = image->format->Bshift ? GL_RGB : GL_BGR; + } + data = (unsigned char*)image->pixels; build(); -- cgit v1.2.3