語法
typedef enum D3D12_BLEND
{
D3D12_BLEND_ZERO = 1,
D3D12_BLEND_ONE = 2,
D3D12_BLEND_SRC_COLOR = 3,
D3D12_BLEND_INV_SRC_COLOR = 4,
D3D12_BLEND_SRC_ALPHA = 5,
D3D12_BLEND_INV_SRC_ALPHA = 6,
D3D12_BLEND_DEST_ALPHA = 7,
D3D12_BLEND_INV_DEST_ALPHA = 8,
D3D12_BLEND_DEST_COLOR = 9,
D3D12_BLEND_INV_DEST_COLOR = 10,
D3D12_BLEND_SRC_ALPHA_SAT = 11,
D3D12_BLEND_BLEND_FACTOR = 14,
D3D12_BLEND_INV_BLEND_FACTOR = 15,
D3D12_BLEND_SRC1_COLOR = 16,
D3D12_BLEND_INV_SRC1_COLOR = 17,
D3D12_BLEND_SRC1_ALPHA = 18,
D3D12_BLEND_INV_SRC1_ALPHA = 19,
D3D12_BLEND_ALPHA_FACTOR = 20,
D3D12_BLEND_INV_ALPHA_FACTOR = 21
} D3D12_BLEND
常數
| 常數 | 描述 |
|---|---|
| D3D12_BLEND_ZERO | 混色因數為 (0, 0, 0, 0)。無預先混色作業。 |
| D3D12_BLEND_ONE | 混色因數為 (1, 1, 1, 1)。無預先混色作業。 |
| D3D12_BLEND_SRC_COLOR | 混色因數為 (Rₛ, Gₛ, Bₛ, Aₛ),也就是來自像素著色器的色彩資料 (RGB)。無預先混色作業。 |
| D3D12_BLEND_INV_SRC_COLOR | 混色因數為 (1 - Rₛ, 1 - Gₛ, 1 - Bₛ, 1 - Aₛ),也就是來自像素著色器的色彩資料 (RGB)。預先混色作業會反轉資料,產生 1 - RGB。 |
| D3D12_BLEND_SRC_ALPHA | 混色因數為 (Aₛ, Aₛ, Aₛ, Aₛ),也就是來自像素著色器的 Alpha 資料 (A)。無預先混色作業。 |
| D3D12_BLEND_INV_SRC_ALPHA | 混色因數為 ( 1 - Aₛ, 1 - Aₛ, 1 - Aₛ, 1 - Aₛ),也就是來自像素著色器的 Alpha 資料 (A)。預先混色作業會反轉資料,產生 1 - A。 |
| D3D12_BLEND_DEST_ALPHA | 混色因數為 (Ad Ad Ad Ad),也就是來自轉譯目標的 Alpha 資料。無預先混色作業。 |
| D3D12_BLEND_INV_DEST_ALPHA | 混色因數為 (1 - Ad 1 - Ad 1 - Ad 1 - Ad),也就是來自轉譯目標的 Alpha 資料。預先混色作業會反轉資料,產生 1 - A。 |
| D3D12_BLEND_DEST_COLOR | 混色因數為 (Rd, Gd, Bd, Ad),也就是來自轉譯目標的色彩資料。無預先混色作業。 |
| D3D12_BLEND_INV_DEST_COLOR | 混色因數為 (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad),也就是來自轉譯目標的色彩資料。預先混色作業會反轉資料,產生 1 - RGB。 |
| D3D12_BLEND_SRC_ALPHA_SAT | 混色因數為 (f, f, f, 1);其中 f = min(Aₛ, 1 - Ad)。預先混色作業會將資料限制為 1 或更小。 |
| D3D12_BLEND_BLEND_FACTOR | 混色因數為透過 ID3D12GraphicsCommandList::OMSetBlendFactor 設定的混色因數。無預先混色作業。 |
| D3D12_BLEND_INV_BLEND_FACTOR | 混色因數為透過 ID3D12GraphicsCommandList::OMSetBlendFactor 設定的混色因數。預先混色作業會反轉混色因數,產生 1 - blend_factor。 |
| D3D12_BLEND_SRC1_COLOR | 混色因數為兩個資料來源,皆為像素著色器輸出的色彩資料。無預先混色作業。此混色因數支援雙來源色彩混色。 |
| D3D12_BLEND_INV_SRC1_COLOR | 混色因數為兩個資料來源,皆為像素著色器輸出的色彩資料。預先混色作業會反轉資料,產生 1 - RGB。此混色因數支援雙來源色彩混色。 |
| D3D12_BLEND_SRC1_ALPHA | 混色因數為資料來源,作為像素著色器輸出的 Alpha 資料。無預先混色作業。此混色因數支援雙來源色彩混色。 |
| D3D12_BLEND_INV_SRC1_ALPHA | 混色因數為資料來源,作為像素著色器輸出的 Alpha 資料。預先混色作業會反轉資料,產生 1 - A。此混色因數支援雙來源色彩混色。 |
| D3D12_BLEND_ALPHA_FACTOR | 混色因數為 (A, A, A, A),其中常數 A 取自透過 OMSetBlendFactor 設定的混色因數。若要在目標電腦上成功使用此常數,功能查詢所傳回的 D3D12_FEATURE_DATA_D3D12_OPTIONS13 必須將其 AlphaBlendFactorSupported 設定為 TRUE。 |
| D3D12_BLEND_INV_ALPHA_FACTOR | 混色因數為 (1 - A, 1 - A, 1 - A, 1 - A),其中常數 A 取自透過 OMSetBlendFactor 設定的混色因數。若要在目標電腦上成功使用此常數,功能查詢所傳回的 D3D12_FEATURE_DATA_D3D12_OPTIONS13 必須將其 AlphaBlendFactorSupported 設定為 TRUE。 |
備註
來源和目的地混色作業是在 D3D12_RENDER_TARGET_BLEND_DESC 結構中指定。需求
標頭: d3d12_xs.h 或 d3d12_x.h程式庫: d3d12_xs.lib 或 d3d12_x.lib
支援的平台:XBOX Series 主機和 XBOX One 系列
