We don't want to save the alpha modulation, we want to save the blend mode.

This commit is contained in:
Sam Lantinga 2013-06-27 11:49:19 -07:00
parent a61d6e4500
commit 1b4d1f20c1

View file

@ -281,8 +281,7 @@ SDL_GL_LoadTexture(SDL_Surface * surface, GLfloat * texcoord)
int w, h;
SDL_Surface *image;
SDL_Rect area;
Uint32 saved_flags;
Uint8 saved_alpha;
SDL_BlendMode saved_mode;
/* Use the surface width and height expanded to powers of 2 */
w = power_of_two(surface->w);
@ -306,8 +305,8 @@ SDL_GL_LoadTexture(SDL_Surface * surface, GLfloat * texcoord)
}
/* Save the alpha blending attributes */
SDL_GetSurfaceAlphaMod(surface, &saved_alpha);
SDL_SetSurfaceAlphaMod(surface, SDL_ALPHA_OPAQUE);
SDL_GetSurfaceBlendMode(surface, &saved_mode);
SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_NONE);
/* Copy the surface into the GL texture image */
area.x = 0;
@ -317,7 +316,7 @@ SDL_GL_LoadTexture(SDL_Surface * surface, GLfloat * texcoord)
SDL_BlitSurface(surface, &area, image, &area);
/* Restore the alpha blending attributes */
SDL_SetSurfaceAlphaMod(surface, saved_alpha);
SDL_SetSurfaceBlendMode(surface, saved_mode);
/* Create an OpenGL texture for the image */
glGenTextures(1, &texture);