SDL_SetAlpha(3) SDL API Reference SDL_SetAlpha(3) NAME SDL_SetAlpha - Adjust the alpha properties of a surface SYNOPSIS #include "SDL.h" int SDL_SetAlpha(SDL_Surface *surface, Uint32 flag, Uint8 alpha); DESCRIPTION Note: This function and the semantics of SDL alpha blending have changed since version 1.1.4. Up until version 1.1.5, an alpha value of 0 was considered opaque and a value of 255 was consid- ered transparent. This has now been inverted: 0 (SDL_AL- PHA_TRANSPARENT) is now considered transparent and 255 (SDL_AL- PHA_OPAQUE) is now considered opaque. SDL_SetAlpha is used for setting the per-surface alpha value and/or en- abling and disabling alpha blending. Thesurface parameter specifies which surface whose alpha attributes you wish to adjust. flags is used to specify whether alpha blending should be used (SDL_SRCALPHA) and whether the surface should use RLE accelera- tion for blitting (SDL_RLEACCEL). flags can be an OR'd combination of these two options, one of these options or 0. If SDL_SRCALPHA is not passed as a flag then all alpha information is ignored when blitting the surface. The alpha parameter is the per-surface alpha value; a sur- face need not have an alpha channel to use per-surface alpha and blit- ting can still be accelerated with SDL_RLEACCEL. Note: The per-surface alpha value of 128 is considered a special case and is optimised, so it's much faster than other per-surface values. Alpha effects surface blitting in the following ways: RGBA->RGB with SDL_SRCALPHA The source is alpha-blended with the destination, using the alpha channel. SDL_SRCCOLORKEY and the per-surface alpha are ignored. RGBA->RGB without SDL_SRCALPHA The RGB data is copied from the source. The source alpha channel and the per-surface alpha value are ignored. RGB->RGBA with SDL_SRCALPHA The source is alpha-blended with the destination using the per-surface alpha value. If SDL_SRCCOL- ORKEY is set, only the pixels not matching the col- orkey value are copied. The alpha channel of the copied pixels is set to opaque. RGB->RGBA without SDL_SRCALPHA The RGB data is copied from the source and the al- pha value of the copied pixels is set to opaque. If SDL_SRCCOLORKEY is set, only the pixels not match- ing the colorkey value are copied. RGBA->RGBA with SDL_SRCALPHA The source is alpha-blended with the destination using the source alpha channel. The alpha channel in the destination surface is left untouched. SDL_SRCCOLORKEY is ignored. RGBA->RGBA without SDL_SRCALPHA The RGBA data is copied to the destination surface. If SDL_SRCCOLORKEY is set, only the pixels not matching the colorkey value are copied. RGB->RGB with SDL_SRCALPHA The source is alpha-blended with the destination using the per-surface alpha value. If SDL_SRCCOL- ORKEY is set, only the pixels not matching the col- orkey value are copied. RGB->RGB without SDL_SRCALPHA The RGB data is copied from the source. If SDL_SRC- COLORKEY is set, only the pixels not matching the colorkey value are copied. Note: Note that RGBA->RGBA blits (with SDL_SRCALPHA set) keep the al- pha of the destination surface. This means that you cannot com- pose two arbitrary RGBA surfaces this way and get the result you would expect from "overlaying" them; the destination alpha will work as a mask. Also note that per-pixel and per-surface alpha cannot be com- bined; the per-pixel alpha is always used if available RETURN VALUE This function returns 0, or -1 if there was an error. SEE ALSO SDL_MapRGBA, SDL_GetRGBA, SDL_DisplayFormatAlpha, SDL_BlitSurface SDL Tue 11 Sep 2001, 23:01 SDL_SetAlpha(3)
Generated by dwww version 1.15 on Sun Jun 23 05:21:32 CEST 2024.