Bagikan melalui


struktur D3D12DDI_TEXTURE_BARRIER_0088 (d3d12umddi.h)

Struktur D3D12DDI_TEXTURE_BARRIER_0088 menjelaskan transisi akses untuk tekstur.

Sintaks

typedef struct D3D12DDI_TEXTURE_BARRIER_0088 {
  D3D12DDI_BARRIER_SYNC                   SyncBefore;
  D3D12DDI_BARRIER_SYNC                   SyncAfter;
  D3D12DDI_BARRIER_ACCESS                 AccessBefore;
  D3D12DDI_BARRIER_ACCESS                 AccessAfter;
  D3D12DDI_BARRIER_LAYOUT                 LayoutBefore;
  D3D12DDI_BARRIER_LAYOUT                 LayoutAfter;
  D3D12DDI_HRESOURCE                      hResource;
  D3D12DDI_BARRIER_SUBRESOURCE_RANGE_0088 Subresources;
  D3D12DDI_TEXTURE_BARRIER_FLAGS_0088     Flags;
} D3D12DDI_TEXTURE_BARRIER_0088;

Anggota

SyncBefore

Nilai D3D12DDI_BARRIER_SYNC yang menentukan cakupan sinkronisasi semua pekerjaan GPU sebelumnya yang harus diselesaikan sebelum menjalankan penghambat.

SyncAfter

Nilai D3D12DDI_BARRIER_SYNC yang menentukan cakupan sinkronisasi semua pekerjaan GPU berikutnya yang harus menunggu hingga eksekusi penghambat selesai.

AccessBefore

Nilai D3D12DDI_BARRIER_ACCESS yang menentukan status akses tekstur sebelum eksekusi pembatas.

AccessAfter

Nilai D3D12DDI_BARRIER_ACCESS yang menentukan status akses tekstur setelah menyelesaikan eksekusi penghadang.

LayoutBefore

Nilai D3D12DDI_BARRIER_LAYOUT yang menentukan tata letak tekstur sebelum eksekusi pembatas.

LayoutAfter

Nilai D3D12DDI_BARRIER_LAYOUT yang menentukan tata letak tekstur setelah penyelesaian eksekusi pembatas.

hResource

Handel sumber daya tekstur menggunakan pembatas.

Subresources

Struktur D3D12DDI_BARRIER_SUBRESOURCE_RANGE_0088 yang menentukan rentang subresource tekstur yang dibatasi.

Flags

Nilai D3D12DDI_TEXTURE_BARRIER_FLAGS_0088 yang menentukan bendera opsional.

Keterangan

Lihat Hambatan yang Disempurnakan untuk informasi umum.

Sinkronisasi

Prosesor grafis dirancang untuk menjalankan pekerjaan sebanyak mungkin secara paralel. Setiap pekerjaan GPU yang bergantung pada pekerjaan GPU sebelumnya harus disinkronkan sebelum mengakses data dependen. Nilai SyncBefore dan SyncAfter adalah masker bitfield logis yang mengidentifikasi pekerjaan apa pun yang akan disinkronkan.

Hambatan harus menunggu semua perintah sebelumnya SyncBefore cakupan selesai sebelum menjalankan penghubung. Demikian pula, Penghalang harus memblokir semua cakupan SyncAfter berikutnya hingga penghalang selesai.

Transisi tata letak

Subresource tekstur dapat menggunakan tata letak yang berbeda untuk berbagai metode akses. Misalnya, tekstur sering dikompresi saat digunakan sebagai target render atau stensil kedalaman dan sering kali tidak dikompresi untuk perintah baca atau salin shader. Penghalang Tekstur menggunakan LayoutBefore dan LayoutAfter untuk menjelaskan transisi tata letak.

Transisi tata letak hanya diperlukan untuk tekstur, oleh karena itu hanya dinyatakan dalam struktur data ini.

LayoutBefore dan LayoutAfter harus kompatibel dengan jenis antrean yang melakukan penghalang. Misalnya, antrean komputasi tidak dapat mentransisikan sub sumber daya ke atau ke luar D3D12_BARRIER_LAYOUT_RENDER_TARGET.

Untuk menyediakan pengurutan penghalang yang terdefinisi dengan baik, tata letak sub sumber daya setelah menyelesaikan urutan penghalang adalah LayoutAfter akhir dalam urutan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 11 (WDDM 3.0)
Header d3d12umddi.h

Lihat juga

D3D12DDI_BARRIER_ACCESS

D3D12DDI_BARRIER_LAYOUT

D3D12DDI_BARRIER_SUBRESOURCE_RANGE_0088

D3D12DDI_BARRIER_SYNC

D3D12DDI_TEXTURE_BARRIER_FLAGS_0088

D3D12DDIARG_BARRIER_0088

PFND3D12DDI_BARRIER_0088