D3DBLEND 열거형
지원되는 혼합 모드를 정의합니다.
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;
상수
-
D3DBLEND_ZERO
-
혼합 계수는 (0, 0, 0, 0)입니다.
-
D3DBLEND_ONE
-
혼합 계수는 (1, 1, 1, 1)입니다.
-
D3DBLEND_SRCCOLOR
-
혼합 계수는 (Rs, Gs, Bs, As)입니다.
-
D3DBLEND_INVSRCCOLOR
-
혼합 계수는 (1 - Rs, 1 - Gs, 1 - Bs, 1 - As)입니다.
-
D3DBLEND_SRCALPHA
-
혼합 계수는 (As, As, As, As)입니다.
-
D3DBLEND_INVSRCALPHA
-
혼합 계수는 ( 1 - As, 1 - As, 1 - As, 1 - As)입니다.
-
D3DBLEND_DESTALPHA
-
혼합 계수는 (a d Ada d Ad)입니다.
-
D3DBLEND_INVDESTALPHA
-
혼합 계수는 (1 -a d 1 - Ad 1 - Ad 1 - Ad)입니다.
-
D3DBLEND_DESTCOLOR
-
혼합 계수는 (R d, Gd, Bd, Ad)입니다.
-
D3DBLEND_INVDESTCOLOR
-
혼합 계수는 (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad)입니다.
-
D3DBLEND_SRCALPHASAT
-
혼합 계수는 (f, f, f, 1); 여기서 f = min(As, 1 - Ad).
-
D3DBLEND_BOTHSRCALPHA
-
사용되지 않습니다. DirectX 6부터 원본 및 대상 혼합 요소를 별도의 호출에서 D3DBLEND_SRCALPHA D3DBLEND_INVSRCALPHA 설정하여 동일한 효과를 얻을 수 있습니다.
-
D3DBLEND_BOTHINVSRCALPHA
-
사용되지 않습니다. 소스 혼합 계수는 (1 - As, 1 - As, 1 - As, 1 - As) 이며 대상 혼합 계수는 (As, As, As, As); 대상 혼합 선택이 재정의됩니다. 이 혼합 모드는 D3DRS_SRCBLEND 렌더링 상태에 대해서만 지원됩니다.
-
D3DBLEND_BLENDFACTOR
-
프레임 버퍼 블렌더에서 사용하는 상수 색 혼합 요소입니다. 이 혼합 모드는 D3DPBLENDCAPS_BLENDFACTOR D3DCAPS9의 SrcBlendCaps 또는 DestBlendCaps 멤버에 설정된 경우에만 지원 됩니다.
-
D3DBLEND_INVBLENDFACTOR
-
프레임 버퍼 블렌더에서 사용하는 반전된 상수 색 혼합 요소입니다. 이 혼합 모드는 D3DPBLENDCAPS_BLENDFACTOR 비트가 D3DCAPS9의 SrcBlendCaps 또는 DestBlendCaps 멤버에 설정된 경우에만 지원 됩니다.
-
D3DBLEND_SRCCOLOR2
-
혼합 계수는 (PSOutColor[1]r, PSOutColor[1]g, PSOutColor[1]b, 사용되지 않음)입니다. 렌더링 대상 혼합을 참조하세요.
Direct3D 9와 Direct3D 9Ex 간의 차이점:
- 이 플래그는 Direct3D 9Ex에서만 사용할 수 있습니다.
-
D3DBLEND_INVSRCCOLOR2
-
혼합 계수는 (1 - PSOutColor[1]r, 1 - PSOutColor[1]g, 1 - PSOutColor[1]b, 사용되지 않음)입니다. 렌더링 대상 혼합을 참조하세요.
Direct3D 9와 Direct3D 9Ex 간의 차이점:
- 이 플래그는 Direct3D 9Ex에서만 사용할 수 있습니다.
-
D3DBLEND_FORCE_DWORD
-
이 열거형을 강제로 32비트 크기로 컴파일합니다. 이 값이 없으면 일부 컴파일러에서 이 열거형을 32비트 이외의 크기로 컴파일할 수 있습니다. 이 값은 사용되지 않습니다.
설명
앞의 멤버 설명에서 원본 및 대상의 RGBA 값은 s 및 d 아래 첨자로 표시됩니다.
이 열거형 형식의 값은 다음 렌더링 상태에서 사용됩니다.
- D3DRS_DESTBLEND
- D3DRS_SRCBLEND
- D3DRS_DESTBLENDALPHA
- D3DRS_SRCBLENDALPHA
렌더링 대상 혼합
Direct3D 9Ex에서 텍스트 렌더링 기능이 향상되었습니다. 일반 형식 글꼴을 렌더링하려면 일반적으로 두 개의 패스가 필요합니다. 두 번째 패스를 제거하기 위해 픽셀 셰이더를 사용하여 PSOutColor[0] 및 PSOutColor[1]를 호출할 수 있는 두 가지 색을 출력할 수 있습니다. 첫 번째 색에는 표준 3개 색 구성 요소(RGB)가 포함됩니다. 두 번째 색에는 알파 구성 요소 3개(첫 번째 색의 각 구성 요소에 대해 하나씩)가 포함됩니다.
이러한 새로운 혼합 모드는 첫 번째 렌더링 대상에서 텍스트 렌더링에만 사용됩니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|
추가 정보