summaryrefslogtreecommitdiff
path: root/src/resources/sdlimagehelper.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-12-27 22:12:10 +0300
committerAndrei Karas <akaras@inbox.ru>2012-12-27 23:15:06 +0300
commit8714a174353529061c8c8d088d7246c4bd81000d (patch)
tree800067371dc1e4e425980afb9b54cf56f034ffa8 /src/resources/sdlimagehelper.cpp
parentdee02b54a28994e78bd7e738ac0b49df9f59d67f (diff)
downloadmv-8714a174353529061c8c8d088d7246c4bd81000d.tar.gz
mv-8714a174353529061c8c8d088d7246c4bd81000d.tar.bz2
mv-8714a174353529061c8c8d088d7246c4bd81000d.tar.xz
mv-8714a174353529061c8c8d088d7246c4bd81000d.zip
Change outline function to better quality but slower.
Also add function to create 32 bit surfaces.
Diffstat (limited to 'src/resources/sdlimagehelper.cpp')
-rw-r--r--src/resources/sdlimagehelper.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/resources/sdlimagehelper.cpp b/src/resources/sdlimagehelper.cpp
index a5423bc62..82e476b8c 100644
--- a/src/resources/sdlimagehelper.cpp
+++ b/src/resources/sdlimagehelper.cpp
@@ -302,3 +302,21 @@ int SDLImageHelper::useOpenGL()
{
return 0;
}
+
+SDL_Surface *SDLImageHelper::create32BitSurface(int width, int height)
+{
+#if SDL_BYTEORDER == SDL_BIG_ENDIAN
+ const int rmask = 0xff000000;
+ const int gmask = 0x00ff0000;
+ const int bmask = 0x0000ff00;
+ const int amask = 0x000000ff;
+#else
+ const int rmask = 0x000000ff;
+ const int gmask = 0x0000ff00;
+ const int bmask = 0x00ff0000;
+ const int amask = 0xff000000;
+#endif
+
+ return SDL_CreateRGBSurface(SDL_SWSURFACE,
+ width, height, 32, rmask, gmask, bmask, amask);
+}