Program generik

Program generik menyediakan cara untuk menentukan grafik dan alur komputasi dalam objek status, menggunakan infrastruktur yang sama dengan raytracing dan grafik kerja. Alih-alih membuat objek status jalur pemrosesan (PSO) terpisah, Anda dapat menentukan beberapa program dalam satu objek status dengan menyusun blok penyusun yang digunakan bersama, seperti shader dan status pencampuran.

Artikel ini menjelaskan DDI untuk driver grafis mode pengguna (UMD) untuk mendukung program generik, tersedia mulai Windows 11, versi 24H2 (WDDM 3.2). Program generik memerlukan dukungan Shader Model 6.8. Untuk detailnya, lihat spesifikasi Program Generik.

Melaporkan dukungan program generik

Dukungan Shader Model 6.8 menyiratkan dukungan program generik. Tidak ada pelaporan kemampuan terpisah khusus untuk program generik.

Tabel fungsi DDI

Program generik menggunakan fungsi DDI berikut:

Objek status

Tentukan program generik dalam objek status dengan menggunakan jenis subobjek D3D12DDI_STATE_SUBOBJECT_TYPE_GENERIC_PROGRAM (nilai 15) dalam D3D12DDI_STATE_SUBOBJECT_TYPE. Lihat D3D12DDI_GENERIC_PROGRAM_DESC_0108 untuk struktur subobjek.

Program generik menentukan nama program, ekspor shader (vertex shader, pixel shader, shader komputasi, dan lainnya), serta referensi ke subobjek lain seperti status pencampuran dan status rasterisasi. Subobjek status alur grafis termasuk campuran, rasterizer, kedalaman/stensil, tata letak input, topologi primitif, format target render, dan lainnya seperti yang didefinisikan dalam enum D3D12DDI_STATE_SUBOBJECT_TYPE .

Program generik mendukung target shader Model 6.8 berikut: vs_6_8, ps_6_8, cs_6_8, ms_6_8, dan as_6_8.

Hubungan dengan grafik kerja

Program generik dan grafik kerja adalah fitur independen yang berbagi infrastruktur objek status. Program generik hanya memerlukan Shader Model 6.8, sementara grafik kerja memerlukan dukungan kemampuan WorkGraphsTier eksplisit.

Lihat juga