Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Defines the supported blend mode.
Syntax
typedef enum D3DBLEND {
D3DBLEND_ZERO = 1,
D3DBLEND_ONE = 2,
D3DBLEND_SRCCOLOR = 3,
D3DBLEND_INVSRCCOLOR = 4,
D3DBLEND_SRCALPHA = 5,
D3DBLEND_INVSRCALPHA = 6,
D3DBLEND_DESTALPHA = 7,
D3DBLEND_INVDESTALPHA = 8,
D3DBLEND_DESTCOLOR = 9,
D3DBLEND_INVDESTCOLOR = 10,
D3DBLEND_SRCALPHASAT = 11,
D3DBLEND_BOTHSRCALPHA = 12,
D3DBLEND_BOTHINVSRCALPHA = 13,
D3DBLEND_BLENDFACTOR = 14,
D3DBLEND_INVBLENDFACTOR = 15,
D3DBLEND_SRCCOLOR2 = 16,
D3DBLEND_INVSRCCOLOR2 = 17,
D3DBLEND_FORCE_DWORD = 0x7fffffff
} D3DBLEND, *LPD3DBLEND;
Constants
-
D3DBLEND_ZERO
-
Blend factor is (0, 0, 0, 0).
-
D3DBLEND_ONE
-
Blend factor is (1, 1, 1, 1).
-
D3DBLEND_SRCCOLOR
-
Blend factor is (Rₛ, Gₛ, Bₛ, Aₛ).
-
D3DBLEND_INVSRCCOLOR
-
Blend factor is (1 - Rₛ, 1 - Gₛ, 1 - Bₛ, 1 - Aₛ).
-
D3DBLEND_SRCALPHA
-
Blend factor is (Aₛ, Aₛ, Aₛ, Aₛ).
-
D3DBLEND_INVSRCALPHA
-
Blend factor is ( 1 - Aₛ, 1 - Aₛ, 1 - Aₛ, 1 - Aₛ).
-
D3DBLEND_DESTALPHA
-
Blend factor is (Ad Ad Ad Ad).
-
D3DBLEND_INVDESTALPHA
-
Blend factor is (1 - Ad 1 - Ad 1 - Ad 1 - Ad).
-
D3DBLEND_DESTCOLOR
-
Blend factor is (Rd, Gd, Bd, Ad).
-
D3DBLEND_INVDESTCOLOR
-
Blend factor is (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad).
-
D3DBLEND_SRCALPHASAT
-
Blend factor is (f, f, f, 1); where f = min(Aₛ, 1 - Ad).
-
D3DBLEND_BOTHSRCALPHA
-
Obsolete. Starting with DirectX 6, you can achieve the same effect by setting the source and destination blend factors to D3DBLEND_SRCALPHA and D3DBLEND_INVSRCALPHA in separate calls.
-
D3DBLEND_BOTHINVSRCALPHA
-
Obsolete. Source blend factor is (1 - Aₛ, 1 - Aₛ, 1 - Aₛ, 1 - Aₛ), and destination blend factor is (Aₛ, Aₛ, Aₛ, Aₛ); the destination blend selection is overridden. This blend mode is supported only for the D3DRS_SRCBLEND render state.
-
D3DBLEND_BLENDFACTOR
-
Constant color blending factor used by the frame-buffer blender. This blend mode is supported only if D3DPBLENDCAPS_BLENDFACTOR is set in the SrcBlendCaps or DestBlendCaps members of D3DCAPS9.
-
D3DBLEND_INVBLENDFACTOR
-
Inverted constant color-blending factor used by the frame-buffer blender. This blend mode is supported only if the D3DPBLENDCAPS_BLENDFACTOR bit is set in the SrcBlendCaps or DestBlendCaps members of D3DCAPS9.
-
D3DBLEND_SRCCOLOR2
-
Blend factor is (PSOutColor[1]r, PSOutColor[1]g, PSOutColor[1]b, not used). See Render Target Blending.
Differences between Direct3D 9 and Direct3D 9Ex:
- This flag is available in Direct3D 9Ex only.
-
D3DBLEND_INVSRCCOLOR2
-
Blend factor is (1 - PSOutColor[1]r, 1 - PSOutColor[1]g, 1 - PSOutColor[1]b, not used)). See Render Target Blending.
Differences between Direct3D 9 and Direct3D 9Ex:
- This flag is available in Direct3D 9Ex only.
-
D3DBLEND_FORCE_DWORD
-
Forces this enumeration to compile to 32 bits in size. Without this value, some compilers would allow this enumeration to compile to a size other than 32 bits. This value is not used.
Remarks
In the preceding member descriptions, the RGBA values of the source and destination are indicated by the s and d subscripts.
The values in this enumerated type are used by the following render states:
- D3DRS_DESTBLEND
- D3DRS_SRCBLEND
- D3DRS_DESTBLENDALPHA
- D3DRS_SRCBLENDALPHA
Render Target Blending
Direct3D 9Ex has improved text rendering capabilities. Rendering clear-type fonts would normally require two passes. To eliminate the second pass, a pixel shader can be used to output two colors, which we can call PSOutColor[0] and PSOutColor[1]. The first color would contain the standard 3 color components (RGB). The second color would contain 3 alpha components (one for each component of the first color).
These new blending modes are only used for text rendering on the first render target.
Requirements
Requirement | Value |
---|---|
Header |
|
See also