Alpha blending rocks!!
SDL 0.6f, fully supporting alpha blending, is available from:
http://www.devolution.com/~slouken/SDL/develop.html
API changes:
SDL_BlitSurface() updates the source and destination rectangles
with clipping information. Pass these updated rectangles to
SDL_UpdateRects(), on pain of crash. :)
The 'clipped' member of SDL_Surface has been removed.
SDL_BlitSurface() automatically clips source and destination
rectangles to make sure they are inside the source and destination
surfaces. This is different from setting SDL_SRCCLIPPING.
There's a new internal function SDL_BlitFast(), which is not
public, but bypasses all rectangle and blit mapping verification.
I figured if you want speed so badly that you keep track of all
of that, you'll write your own custom blitter anyway. Comments?
New function:
SDL_SetAlpha() -- Set's the alpha value for the surface.
(as opposed to using the alpha channel in pixel format)
SDL_AllocSurface() takes an additional alpha mask parameter.
The low-level blitter has been completely rewritten to support
alpha blending. It's also slower, but there's support for writing
optimized blitters and plugging them into the switch statements.
There's a new program in the test directory: testalpha