summaryrefslogtreecommitdiff
path: root/src/resources
diff options
context:
space:
mode:
Diffstat (limited to 'src/resources')
-rw-r--r--src/resources/atlasmanager.cpp15
-rw-r--r--src/resources/sdl2imagehelper.cpp3
2 files changed, 9 insertions, 9 deletions
diff --git a/src/resources/atlasmanager.cpp b/src/resources/atlasmanager.cpp
index 853f79743..4b3656ee6 100644
--- a/src/resources/atlasmanager.cpp
+++ b/src/resources/atlasmanager.cpp
@@ -200,10 +200,6 @@ void AtlasManager::simpleSort(const std::string &name,
SDL_Surface *AtlasManager::createSDLAtlas(TextureAtlas *const atlas)
{
-#ifdef USE_SDL2
- // +++ should be enabled after
- return nullptr;
-#else
#if SDL_BYTEORDER == SDL_BIG_ENDIAN
const int rmask = 0xff000000;
const int gmask = 0x00ff0000;
@@ -244,19 +240,22 @@ SDL_Surface *AtlasManager::createSDLAtlas(TextureAtlas *const atlas)
if (image)
{
+ if (image->mSDLSurface)
+ {
#ifdef USE_SDL2
- SDL_SetSurfaceAlphaMod(image->mSDLSurface, 255);
+ SDL_SetSurfaceAlphaMod(image->mSDLSurface, SDL_ALPHA_OPAQUE);
+ SDL_SetSurfaceBlendMode (image->mSDLSurface, SDL_BLENDMODE_NONE);
#else
- SDL_SetAlpha(image->mSDLSurface, 0, SDL_ALPHA_OPAQUE);
+ SDL_SetAlpha(image->mSDLSurface, 0, SDL_ALPHA_OPAQUE);
#endif
- graphics->drawImage(image, item->x, item->y);
+ graphics->drawImage(image, item->x, item->y);
+ }
}
}
delete graphics;
atlas->surface = surface;
return surface;
-#endif
}
void AtlasManager::convertAtlas(TextureAtlas *const atlas)
diff --git a/src/resources/sdl2imagehelper.cpp b/src/resources/sdl2imagehelper.cpp
index acc72ce00..c5a75d236 100644
--- a/src/resources/sdl2imagehelper.cpp
+++ b/src/resources/sdl2imagehelper.cpp
@@ -137,7 +137,8 @@ Image *SDLImageHelper::_SDLload(SDL_Surface *tmpImage) const
if (!tmpImage)
return nullptr;
- return new Image(tmpImage, false, nullptr);
+ SDL_Surface *image = convertTo32Bit(tmpImage);
+ return new Image(image, false, nullptr);
}
int SDLImageHelper::useOpenGL() const