mirror of
https://github.com/joel16/SDL2.git
synced 2024-12-14 14:59:43 +00:00
56 lines
3.5 KiB
Groff
56 lines
3.5 KiB
Groff
|
.TH "SDL_SetAlpha" "3" "Mon 12 Mar 2001, 01:04" "SDL" "SDL API Reference"
|
||
|
.SH "NAME"
|
||
|
SDL_SetAlpha\- Adjust the alpha properties of a surface
|
||
|
.SH "SYNOPSIS"
|
||
|
.PP
|
||
|
\fB#include "SDL\&.h"
|
||
|
.sp
|
||
|
\fBint \fBSDL_SetAlpha\fP\fR(\fBSDL_Surface *surface, Uint32 flag, Uint8 alpha\fR);
|
||
|
.SH "DESCRIPTION"
|
||
|
.PP
|
||
|
.RS
|
||
|
\fBNote:
|
||
|
.PP
|
||
|
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 considered transparent\&. This has now been inverted: 0 (\fBSDL_ALPHA_TRANSPARENT\fP) is now considered transparent and 255 (\fBSDL_ALPHA_OPAQUE\fP) is now considered opaque\&.
|
||
|
.RE
|
||
|
.PP
|
||
|
\fBSDL_SetAlpha\fP is used for setting the per-surface alpha and/or enabling and disabling per-pixel alpha blending\&.
|
||
|
.PP
|
||
|
The \fBsurface\fR parameter specifies which surface whose alpha attributes you wish to adjust\&. \fBflags\fR is used to specify whether alpha blending should be used (\fBSDL_SRCALPHA\fP) and whether the surface should use RLE acceleration for blitting (\fBSDL_RLEACCEL\fP)\&. \fBflags\fR can be an OR\&'d combination of these two options, one of these options or 0\&. If \fBSDL_SRCALPHA\fP is not passed as a flag then all alpha information is ignored when blitting the surface\&. The \fBalpha\fR parameter is the per-surface alpha value, a surface need not have an alpha channel to use per-surface alpha and blitting can still be accelerated with \fBSDL_RLEACCEL\fP\&. Setting the per-surface alpha value to 0 disables per-surface alpha blending\&.
|
||
|
.PP
|
||
|
.RS
|
||
|
\fBNote:
|
||
|
.PP
|
||
|
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\&.
|
||
|
.RE
|
||
|
.PP
|
||
|
Alpha effects surface blitting in the following ways:
|
||
|
.TP 20
|
||
|
RGBA->RGB with \fBSDL_SRCALPHA\fP
|
||
|
The source is alpha-blended with the destination, using the alpha channel\&. \fBSDL_SRCCOLORKEY\fP and the per-surface alpha are ignored\&.
|
||
|
.TP 20
|
||
|
RGBA->RGB without \fBSDL_SRCALPHA\fP
|
||
|
The RGB data is copied from the source\&. The source alpha channel and the per-surface alpha value are ignored\&.
|
||
|
.TP 20
|
||
|
RGB->RGBA with \fBSDL_SRCALPHA\fP
|
||
|
The source is alpha-blended with the destination using the per-surface alpha value\&. If \fBSDL_SRCCOLORKEY\fPliteral> is set, only the pixels not matching the colorkey value are copied\&.
|
||
|
.TP 20
|
||
|
RGB->RGBA without \fBSDL_SRCALPHA\fP
|
||
|
The RGB data is copied from the source and the destination alpha is zero to opaque\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&.
|
||
|
.TP 20
|
||
|
RGBA->RGBA with \fBSDL_SRCALPHA\fP
|
||
|
The source is alpha-blended with the destination using the source alpha channel\&. The alpha channel in the destination surface is left untouched\&. \fBSDL_SRCCOLORKEY\fP is ignored\&.
|
||
|
.TP 20
|
||
|
RGBA->RGBA without \fBSDL_SRCALPHA\fP
|
||
|
The RGBA data is copied to the destination surface\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&.
|
||
|
.TP 20
|
||
|
RGB->RGB with \fBSDL_SRCALPHA\fP
|
||
|
The source is alpha-blended with the destination using the per-surface alpha value\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&.
|
||
|
.TP 20
|
||
|
RGB->RGB without \fBSDL_SRCALPHA\fP
|
||
|
The RGB data is copied from the source\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&.
|
||
|
.SH "SEE ALSO"
|
||
|
.PP
|
||
|
\fI\fBSDL_MapRGBA\fP\fR, \fI\fBSDL_GetRGBA\fP\fR, \fI\fBSDL_DisplayFormatAlpha\fP\fR, \fI\fBSDL_BlitSurface\fP\fR
|
||
|
...\" created by instant / docbook-to-man, Mon 12 Mar 2001, 01:04
|