Bagikan melalui


struktur D3D11_BLEND_DESC1 (d3d11_1.h)

Menjelaskan status campuran yang Anda gunakan dalam panggilan ke D3D11Device1::CreateBlendState1 untuk membuat objek blend-state.

Catatan

Struktur ini didukung oleh runtime Direct3D 11.1, yang tersedia di Windows 8 dan sistem operasi yang lebih baru.

Sintaks

typedef struct D3D11_BLEND_DESC1 {
  BOOL                            AlphaToCoverageEnable;
  BOOL                            IndependentBlendEnable;
  D3D11_RENDER_TARGET_BLEND_DESC1 RenderTarget[8];
} D3D11_BLEND_DESC1;

Anggota

AlphaToCoverageEnable

Jenis: BOOL

Menentukan apakah akan menggunakan alfa-ke-cakupan sebagai teknik multisampling saat mengatur piksel ke target render. Untuk informasi selengkapnya tentang menggunakan alfa-ke-cakupan, lihat Alfa-Ke-Cakupan.

IndependentBlendEnable

Jenis: BOOL

Menentukan apakah akan mengaktifkan penpaduan independen dalam target render simultan. Atur ke TRUE untuk mengaktifkan penpaduan independen. Jika diatur ke FALSE, hanya anggota RenderTarget[0] yang digunakan; RenderTarget[1..7] diabaikan.

Lihat bagian Keterangan untuk pembatasan.

RenderTarget[8]

Jenis: D3D11_RENDER_TARGET_BLEND_DESC1[8]

Array struktur D3D11_RENDER_TARGET_BLEND_DESC1 yang menjelaskan status campuran untuk target render; ini sesuai dengan delapan target render yang dapat terikat ke tahap output-merger pada satu waktu.

Keterangan

Berikut adalah nilai default untuk status campuran.

Provinsi Nilai Default
AlphaToCoverageEnable FALSE
IndependentBlendEnable FALSE
RenderTarget[0]. BlendEnable FALSE
RenderTarget[0]. LogicOpEnable FALSE
RenderTarget[0]. SrcBlend D3D11_BLEND_ONE
RenderTarget[0]. DestBlend D3D11_BLEND_ZERO
RenderTarget[0]. BlendOp D3D11_BLEND_OP_ADD
RenderTarget[0]. SrcBlendAlpha D3D11_BLEND_ONE
RenderTarget[0]. DestBlendAlpha D3D11_BLEND_ZERO
RenderTarget[0]. BlendOpAlpha D3D11_BLEND_OP_ADD
RenderTarget[0]. LogicOp D3D11_LOGIC_OP_NOOP
RenderTarget[0]. RenderTargetWriteMask D3D11_COLOR_WRITE_ENABLE_ALL

Jika jenis driver diatur ke D3D_DRIVER_TYPE_HARDWARE, tingkat fitur diatur ke kurang dari atau sama dengan D3D_FEATURE_LEVEL_9_3, dan format piksel target render diatur ke DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB, atau DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, perangkat tampilan melakukan perpaduan dalam ruang RGB (sRGB) standar dan bukan dalam ruang linier. Namun, jika tingkat fitur diatur ke lebih besar dari D3D_FEATURE_LEVEL_9_3, perangkat tampilan melakukan perpaduan dalam ruang linier, yang ideal.

Saat Anda mengatur anggota LogicOpEnable dari elemen pertama array RenderTarget (RenderTarget[0]) ke TRUE, Anda juga harus mengatur anggota BlendEnabledari RenderTarget[0] ke FALSE, dan anggota IndependentBlendEnable dari D3D11_BLEND_DESC1 ini ke FALSE. Ini mencerminkan batasan dalam perangkat keras yang tidak dapat Anda campurkan operasi logika dengan pencampuran di beberapa target render, dan bahwa ketika Anda menggunakan operasi logika, Anda harus menerapkan operasi logika yang sama ke semua target render.

Persyaratan

   
Klien minimum yang didukung Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2012 dan Pembaruan Platform untuk Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Header d3d11_1.h

Lihat juga

Struktur Inti

D3D11_RENDER_TARGET_BLEND_DESC1

ID3D11BlendState1::GetDesc1