struktur D3D12_GRAPHICS_PIPELINE_STATE_DESC (d3d12.h)
Menjelaskan objek status alur grafik.
Sintaks
typedef struct D3D12_GRAPHICS_PIPELINE_STATE_DESC {
ID3D12RootSignature *pRootSignature;
D3D12_SHADER_BYTECODE VS;
D3D12_SHADER_BYTECODE PS;
D3D12_SHADER_BYTECODE DS;
D3D12_SHADER_BYTECODE HS;
D3D12_SHADER_BYTECODE GS;
D3D12_STREAM_OUTPUT_DESC StreamOutput;
D3D12_BLEND_DESC BlendState;
UINT SampleMask;
D3D12_RASTERIZER_DESC RasterizerState;
D3D12_DEPTH_STENCIL_DESC DepthStencilState;
D3D12_INPUT_LAYOUT_DESC InputLayout;
D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue;
D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType;
UINT NumRenderTargets;
DXGI_FORMAT RTVFormats[8];
DXGI_FORMAT DSVFormat;
DXGI_SAMPLE_DESC SampleDesc;
UINT NodeMask;
D3D12_CACHED_PIPELINE_STATE CachedPSO;
D3D12_PIPELINE_STATE_FLAGS Flags;
} D3D12_GRAPHICS_PIPELINE_STATE_DESC;
Anggota
pRootSignature
Penunjuk ke objek ID3D12RootSignature .
VS
Struktur D3D12_SHADER_BYTECODE yang menjelaskan shader puncak.
PS
Struktur D3D12_SHADER_BYTECODE yang menjelaskan shader piksel.
DS
Struktur D3D12_SHADER_BYTECODE yang menjelaskan shader domain.
HS
Struktur D3D12_SHADER_BYTECODE yang menggambarkan shader lambung.
GS
Struktur D3D12_SHADER_BYTECODE yang menjelaskan shader geometri.
StreamOutput
Struktur D3D12_STREAM_OUTPUT_DESC yang menjelaskan buffer output streaming.
BlendState
Struktur D3D12_BLEND_DESC yang menjelaskan status campuran.
SampleMask
Masker sampel untuk status campuran.
RasterizerState
Struktur D3D12_RASTERIZER_DESC yang menggambarkan status rasterizer.
DepthStencilState
Struktur D3D12_DEPTH_STENCIL_DESC yang menjelaskan status stensil kedalaman.
InputLayout
Struktur D3D12_INPUT_LAYOUT_DESC yang menjelaskan data input-buffer untuk tahap input-assembler.
IBStripCutValue
Menentukan properti buffer indeks dalam struktur D3D12_INDEX_BUFFER_STRIP_CUT_VALUE .
PrimitiveTopologyType
Nilai yang D3D12_PRIMITIVE_TOPOLOGY_TYPE-ketik untuk jenis primitif, dan urutan data primitif.
NumRenderTargets
Jumlah format target render di anggota RTVFormats .
RTVFormats[8]
Array nilai yang ditik DXGI_FORMAT untuk format target render.
DSVFormat
Nilai DXGI_FORMAT-ketik untuk format stensil kedalaman.
SampleDesc
Struktur DXGI_SAMPLE_DESC yang menentukan parameter multisampling.
NodeMask
Untuk operasi GPU tunggal, atur ini ke nol. Jika ada beberapa simpul GPU, atur bit untuk mengidentifikasi simpul (adaptor fisik perangkat) yang status alur grafisnya akan diterapkan. Setiap bit dalam masker sesuai dengan satu simpul. Lihat Sistem multi-adaptor.
CachedPSO
Objek status alur yang di-cache, sebagai struktur D3D12_CACHED_PIPELINE_STATE . pCachedBlob dan CachedBlobSizeInBytes masing-masing dapat diatur ke NULL dan 0.
Flags
Konstanta enumerasi D3D12_PIPELINE_STATE_FLAGS seperti untuk "debug alat".
Keterangan
Struktur ini digunakan oleh metode CreateGraphicsPipelineState .
Runtime memvalidasi:
- Apakah tautan antara tahap shader sudah benar.
- Jika anggota HS dan DS ditentukan, anggota PrimitiveTopologyType untuk jenis topologi harus diatur ke D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH.
- Apakah eksekusi frekuensi sampel tidak diizinkan dengan pola anti-aliasing multi-sampel pusat (MSAA).
- Apakah baris anti-alias tidak diizinkan dengan pola MSAA tengah.
-
Jika anggota ForcedSampleCountdari D3D12_RASTERIZER_DESC yang ditentukan RasterizerState bukan nol:
- Kedalaman/stensil harus dinonaktifkan.
- Pixel shader tidak dapat menghasilkan kedalaman.
- Piksel shader tidak dapat berjalan pada frekuensi sampel.
- Jumlah sampel target render harus 1.
- Apakah status campuran kompatibel dengan format target render.
- Apakah jenis output shader piksel kompatibel dengan format target render.
- Apakah jumlah dan kualitas sampel didukung untuk format stensil target/kedalaman render.
Persyaratan
Header | d3d12.h |