]> git.xonotic.org Git - xonotic/xonotic.git/blob - misc/builddeps/dp.win64/share/man/man3/SDL_SetAlpha.3
Merge branch 'master' of ssh://git.xonotic.org/xonotic
[xonotic/xonotic.git] / misc / builddeps / dp.win64 / share / man / man3 / SDL_SetAlpha.3
1 .TH "SDL_SetAlpha" "3" "Tue 11 Sep 2001, 23:01" "SDL" "SDL API Reference" 
2 .SH "NAME"
3 SDL_SetAlpha \- Adjust the alpha properties of a surface
4 .SH "SYNOPSIS"
5 .PP
6 \fB#include "SDL\&.h"
7 .sp
8 \fBint \fBSDL_SetAlpha\fP\fR(\fBSDL_Surface *surface, Uint32 flag, Uint8 alpha\fR);
9 .SH "DESCRIPTION"
10 .PP
11 .RS
12 \fBNote:  
13 .PP
14 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\&.
15 .RE
16 .PP
17 \fBSDL_SetAlpha\fP is used for setting the per-surface alpha value and/or enabling and disabling alpha blending\&.
18 .PP
19 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\&.
20 .PP
21 .RS
22 \fBNote:  
23 .PP
24 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\&.
25 .RE
26 .PP
27 Alpha effects surface blitting in the following ways:
28 .TP 20
29 RGBA->RGB with \fBSDL_SRCALPHA\fP
30 The source is alpha-blended with the destination, using the alpha channel\&. \fBSDL_SRCCOLORKEY\fP and the per-surface alpha are ignored\&.
31 .TP 20
32 RGBA->RGB without \fBSDL_SRCALPHA\fP
33 The RGB data is copied from the source\&. The source alpha channel and the per-surface alpha value are ignored\&.
34 .TP 20
35 RGB->RGBA with \fBSDL_SRCALPHA\fP
36 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\&. The alpha channel of the copied pixels is set to opaque\&.
37 .TP 20
38 RGB->RGBA without \fBSDL_SRCALPHA\fP
39 The RGB data is copied from the source and the alpha value of the copied pixels is set to opaque\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&. 
40 .TP 20
41 RGBA->RGBA with \fBSDL_SRCALPHA\fP
42 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\&.
43 .TP 20
44 RGBA->RGBA without \fBSDL_SRCALPHA\fP
45 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\&.
46 .TP 20
47 RGB->RGB with \fBSDL_SRCALPHA\fP
48 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\&.
49 .TP 20
50 RGB->RGB without \fBSDL_SRCALPHA\fP
51 The RGB data is copied from the source\&. If \fBSDL_SRCCOLORKEY\fP is set, only the pixels not matching the colorkey value are copied\&.
52 .PP
53 .RS
54 \fBNote:  
55 .PP
56  Note that RGBA->RGBA blits (with SDL_SRCALPHA set) keep the alpha of the destination surface\&. This means that you cannot compose two arbitrary RGBA surfaces this way and get the result you would expect from "overlaying" them; the destination alpha will work as a mask\&.
57 .PP
58 Also note that per-pixel and per-surface alpha cannot be combined; the per-pixel alpha is always used if available
59 .RE
60 .SH "RETURN VALUE"
61 .PP
62 This function returns \fB0\fR, or \fB-1\fR if there was an error\&.
63 .SH "SEE ALSO"
64 .PP
65 \fI\fBSDL_MapRGBA\fP\fR, \fI\fBSDL_GetRGBA\fP\fR, \fI\fBSDL_DisplayFormatAlpha\fP\fR, \fI\fBSDL_BlitSurface\fP\fR
66 .\" created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01