diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-12-27 22:12:10 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-12-27 23:15:06 +0300 |
commit | 8714a174353529061c8c8d088d7246c4bd81000d (patch) | |
tree | 800067371dc1e4e425980afb9b54cf56f034ffa8 /src/resources/openglimagehelper.cpp | |
parent | dee02b54a28994e78bd7e738ac0b49df9f59d67f (diff) | |
download | mv-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/openglimagehelper.cpp')
-rw-r--r-- | src/resources/openglimagehelper.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/resources/openglimagehelper.cpp b/src/resources/openglimagehelper.cpp index 7e5c77c7f..badaf0223 100644 --- a/src/resources/openglimagehelper.cpp +++ b/src/resources/openglimagehelper.cpp @@ -318,4 +318,26 @@ void OpenGLImageHelper::initTextureSampler(GLint id) mglSamplerParameteri(id, GL_TEXTURE_MAG_FILTER, GL_NEAREST); } } + +SDL_Surface *OpenGLImageHelper::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 + + width = powerOfTwo(width); + height = powerOfTwo(height); + + return SDL_CreateRGBSurface(SDL_SWSURFACE, + width, height, 32, rmask, gmask, bmask, amask); +} + #endif |