BlendMode.h
1 //
3 // SFML - Simple and Fast Multimedia Library
4 // Copyright (C) 2007-2018 Laurent Gomila (laurent@sfml-dev.org)
5 //
6 // This software is provided 'as-is', without any express or implied warranty.
7 // In no event will the authors be held liable for any damages arising from the use of this software.
8 //
9 // Permission is granted to anyone to use this software for any purpose,
10 // including commercial applications, and to alter it and redistribute it freely,
11 // subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented;
14 // you must not claim that you wrote the original software.
15 // If you use this software in a product, an acknowledgment
16 // in the product documentation would be appreciated but is not required.
17 //
18 // 2. Altered source versions must be plainly marked as such,
19 // and must not be misrepresented as being the original software.
20 //
21 // 3. This notice may not be removed or altered from any source distribution.
22 //
24 
25 #ifndef SFML_BLENDMODE_H
26 #define SFML_BLENDMODE_H
27 
29 // Headers
31 #include <SFML/Graphics/Export.h>
32 
33 
38 typedef enum
39 {
40  sfBlendFactorZero,
41  sfBlendFactorOne,
42  sfBlendFactorSrcColor,
43  sfBlendFactorOneMinusSrcColor,
44  sfBlendFactorDstColor,
45  sfBlendFactorOneMinusDstColor,
46  sfBlendFactorSrcAlpha,
47  sfBlendFactorOneMinusSrcAlpha,
48  sfBlendFactorDstAlpha,
49  sfBlendFactorOneMinusDstAlpha
50 } sfBlendFactor;
51 
52 
57 typedef enum
58 {
59  sfBlendEquationAdd,
60  sfBlendEquationSubtract,
61  sfBlendEquationReverseSubtract
62 } sfBlendEquation;
63 
64 
69 typedef struct
70 {
71  sfBlendFactor colorSrcFactor;
72  sfBlendFactor colorDstFactor;
73  sfBlendEquation colorEquation;
74  sfBlendFactor alphaSrcFactor;
75  sfBlendFactor alphaDstFactor;
76  sfBlendEquation alphaEquation;
77 } sfBlendMode;
78 
79 
80 CSFML_GRAPHICS_API const sfBlendMode sfBlendAlpha;
81 CSFML_GRAPHICS_API const sfBlendMode sfBlendAdd;
82 CSFML_GRAPHICS_API const sfBlendMode sfBlendMultiply;
83 CSFML_GRAPHICS_API const sfBlendMode sfBlendNone;
84 
85 
86 #endif // SFML_BLENDMODE_H
sfBlendMode::colorSrcFactor
sfBlendFactor colorSrcFactor
Source blending factor for the color channels.
Definition: BlendMode.h:71
sfBlendMode::alphaSrcFactor
sfBlendFactor alphaSrcFactor
Source blending factor for the alpha channel.
Definition: BlendMode.h:74
sfBlendMode::colorEquation
sfBlendEquation colorEquation
Blending equation for the color channels.
Definition: BlendMode.h:73
sfBlendMode
Blending mode for drawing.
Definition: BlendMode.h:70
sfBlendMode::alphaEquation
sfBlendEquation alphaEquation
Blending equation for the alpha channel.
Definition: BlendMode.h:76
sfBlendMode::alphaDstFactor
sfBlendFactor alphaDstFactor
Destination blending factor for the alpha channel.
Definition: BlendMode.h:75
sfBlendMode::colorDstFactor
sfBlendFactor colorDstFactor
Destination blending factor for the color channels.
Definition: BlendMode.h:72