다음을 통해 공유


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

D3DRENDERSTATETYPE을 참조하세요.

렌더링 대상 혼합

Direct3D 9Ex에서 텍스트 렌더링 기능이 향상되었습니다. 일반 형식 글꼴을 렌더링하려면 일반적으로 두 개의 패스가 필요합니다. 두 번째 패스를 제거하기 위해 픽셀 셰이더를 사용하여 PSOutColor[0] 및 PSOutColor[1]를 호출할 수 있는 두 가지 색을 출력할 수 있습니다. 첫 번째 색에는 표준 3개 색 구성 요소(RGB)가 포함됩니다. 두 번째 색에는 알파 구성 요소 3개(첫 번째 색의 각 구성 요소에 대해 하나씩)가 포함됩니다.

이러한 새로운 혼합 모드는 첫 번째 렌더링 대상에서 텍스트 렌더링에만 사용됩니다.

요구 사항

요구 사항
헤더
D3D9Types.h

추가 정보

Direct3D 열거형