enumerasi D3D12DDI_BARRIER_ACCESS (d3d12umddi.h)
Nilai D3D12DDI_BARRIER_ACCESS sedikit bijaksana ATAU dari bidang berikut yang menentukan akses sumber daya sehubungan dengan penghadang.
Sintaks
typedef enum D3D12DDI_BARRIER_ACCESS {
D3D12DDI_BARRIER_ACCESS_COMMON = 0x0,
D3D12DDI_BARRIER_ACCESS_VERTEX_BUFFER = 0x1,
D3D12DDI_BARRIER_ACCESS_CONSTANT_BUFFER = 0x2,
D3D12DDI_BARRIER_ACCESS_INDEX_BUFFER = 0x4,
D3D12DDI_BARRIER_ACCESS_RENDER_TARGET = 0x8,
D3D12DDI_BARRIER_ACCESS_UNORDERED_ACCESS = 0x10,
D3D12DDI_BARRIER_ACCESS_DEPTH_STENCIL_WRITE = 0x20,
D3D12DDI_BARRIER_ACCESS_DEPTH_STENCIL_READ = 0x40,
D3D12DDI_BARRIER_ACCESS_SHADER_RESOURCE = 0x80,
D3D12DDI_BARRIER_ACCESS_STREAM_OUTPUT = 0x100,
D3D12DDI_BARRIER_ACCESS_INDIRECT_ARGUMENT = 0x200,
D3D12DDI_BARRIER_ACCESS_PREDICATION = 0x200,
D3D12DDI_BARRIER_ACCESS_COPY_DEST = 0x400,
D3D12DDI_BARRIER_ACCESS_COPY_SOURCE = 0x800,
D3D12DDI_BARRIER_ACCESS_RESOLVE_DEST = 0x1000,
D3D12DDI_BARRIER_ACCESS_RESOLVE_SOURCE = 0x2000,
D3D12DDI_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_READ = 0x4000,
D3D12DDI_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_WRITE = 0x8000,
D3D12DDI_BARRIER_ACCESS_SHADING_RATE_SOURCE = 0x10000,
D3D12DDI_BARRIER_ACCESS_VIDEO_DECODE_READ = 0x20000,
D3D12DDI_BARRIER_ACCESS_VIDEO_DECODE_WRITE = 0x40000,
D3D12DDI_BARRIER_ACCESS_VIDEO_PROCESS_READ = 0x80000,
D3D12DDI_BARRIER_ACCESS_VIDEO_PROCESS_WRITE = 0x100000,
D3D12DDI_BARRIER_ACCESS_VIDEO_ENCODE_READ = 0x200000,
D3D12DDI_BARRIER_ACCESS_VIDEO_ENCODE_WRITE = 0x400000,
D3D12DDI_BARRIER_ACCESS_NO_ACCESS = 0x80000000
} ;
Konstanta
D3D12DDI_BARRIER_ACCESS_COMMON Nilai: 0x0 Akses awal default untuk semua sumber daya dalam cakupan ExecuteCommandLists tertentu. Mendukung semua jenis akses yang kompatibel dengan tata letak dan properti sumber daya saat ini, termasuk tidak lebih dari satu akses tulis. Untuk buffer dan tekstur yang menggunakan D3D12DDI_BARRIER_LAYOUT_COMMON, D3D12DDI_BARRIER_ACCESS_COMMON mendukung akses baca dan tulis bersamaan. Saat digunakan sebagai AccessAfter, D3D12DDI_BARRIER_ACCESS_COMMON dapat digunakan untuk mengembalikan sumber daya kembali ke aksesibilitas umum. Perhatikan bahwa ini mungkin memaksa cache yang tidak perlu memerah jika digunakan dengan tidak benar. Jika memungkinkan, AccessAfter harus dibatasi pada bit akses eksplisit. Hindari menggunakan D3D12DDI_BARRIER_ACCESS_COMMON sebagai penghalang AccessBefore nilai. Setiap bahaya baca-setelah-tulis atau tulis-setelah-tulis paling baik ditangani menggunakan AccessBefore bit eksplisit. |
D3D12DDI_BARRIER_ACCESS_VERTEX_BUFFER Nilai: 0x1 Sumber daya buffer dapat diakses sebagai buffer vertex dalam antrean eksekusi saat ini. |
D3D12DDI_BARRIER_ACCESS_CONSTANT_BUFFER Nilai: 0x2 Sumber daya buffer dapat diakses sebagai buffer konstan dalam antrean eksekusi saat ini. |
D3D12DDI_BARRIER_ACCESS_INDEX_BUFFER Nilai: 0x4 Sumber daya buffer dapat diakses sebagai buffer indeks dalam antrean eksekusi saat ini. |
D3D12DDI_BARRIER_ACCESS_RENDER_TARGET Nilai: 0x8 Sumber daya dapat diakses sebagai target render. |
D3D12DDI_BARRIER_ACCESS_UNORDERED_ACCESS Nilai: 0x10 Sumber daya dapat diakses sebagai sumber daya akses yang tidak berurut. |
D3D12DDI_BARRIER_ACCESS_DEPTH_STENCIL_WRITE Nilai: 0x20 Sumber daya dapat diakses sebagai sumber daya kedalaman/stensil yang dapat ditulis. |
D3D12DDI_BARRIER_ACCESS_DEPTH_STENCIL_READ Nilai: 0x40 Sumber daya dapat diakses sebagai sumber daya kedalaman/stensil baca-saja. |
D3D12DDI_BARRIER_ACCESS_SHADER_RESOURCE Nilai: 0x80 Sumber daya dapat diakses sebagai sumber daya shader. |
D3D12DDI_BARRIER_ACCESS_STREAM_OUTPUT Nilai: 0x100 Buffer dapat diakses sebagai target output aliran. |
D3D12DDI_BARRIER_ACCESS_INDIRECT_ARGUMENT Nilai: 0x200 Buffer dapat diakses sebagai buffer argumen tidak langsung. |
D3D12DDI_BARRIER_ACCESS_PREDICATION Nilai: 0x200 Buffer dapat diakses sebagai buffer predikasi. Alias dengan D3D12DDI_BARRIER_ACCESS_INDIRECT_ARGUMENT. |
D3D12DDI_BARRIER_ACCESS_COPY_DEST Nilai: 0x400 Sumber daya dapat diakses sebagai tujuan salinan. |
D3D12DDI_BARRIER_ACCESS_COPY_SOURCE Nilai: 0x800 Sumber daya dapat diakses sebagai sumber salinan. |
D3D12DDI_BARRIER_ACCESS_RESOLVE_DEST Nilai: 0x1000 Sumber daya dapat diakses sebagai tujuan penyelesaian. |
D3D12DDI_BARRIER_ACCESS_RESOLVE_SOURCE Nilai: 0x2000 Sumber daya dapat diakses sebagai sumber penyelesaian. |
D3D12DDI_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_READ Nilai: 0x4000 Sumber daya dapat diakses untuk dibaca sebagai struktur akselerasi pelacakan sinar. Sumber daya harus dibuat menggunakan status awal D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE. |
D3D12DDI_BARRIER_ACCESS_RAYTRACING_ACCELERATION_STRUCTURE_WRITE Nilai: 0x8000 Sumber daya dapat diakses untuk ditulis sebagai struktur akselerasi pelacakan sinar. Sumber daya harus dibuat menggunakan status awal D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE. |
D3D12DDI_BARRIER_ACCESS_SHADING_RATE_SOURCE Nilai: 0x10000 Sumber daya dapat diakses sebagai sumber laju bayangan. |
D3D12DDI_BARRIER_ACCESS_VIDEO_DECODE_READ Nilai: 0x20000 Sumber daya dapat diakses untuk akses baca-saja dalam antrean dekode video. |
D3D12DDI_BARRIER_ACCESS_VIDEO_DECODE_WRITE Nilai: 0x40000 Sumber daya dapat diakses untuk akses tulis dalam antrean dekode video. |
D3D12DDI_BARRIER_ACCESS_VIDEO_PROCESS_READ Nilai: 0x80000 Sumber daya dapat diakses untuk akses baca-saja dalam antrean proses video. |
D3D12DDI_BARRIER_ACCESS_VIDEO_PROCESS_WRITE Nilai: 0x100000 Sumber daya dapat diakses untuk akses tulis dalam antrean proses video. |
D3D12DDI_BARRIER_ACCESS_VIDEO_ENCODE_READ Nilai: 0x200000 Sumber daya dapat diakses untuk akses baca-saja dalam antrean pengodean video. |
D3D12DDI_BARRIER_ACCESS_VIDEO_ENCODE_WRITE Nilai: 0x400000 Sumber daya dapat diakses untuk akses tulis dalam antrean pengodean video. |
D3D12DDI_BARRIER_ACCESS_NO_ACCESS Nilai: 0x80000000 Sumber daya tidak dapat diakses untuk dibaca atau ditulis. Setelah akses sub sumber daya ditransisikan ke D3D12DDI_BARRIER_ACCESS_NO_ACCESS, akses tersebut harus diaktifkan kembali oleh hambatan dengan AccessBefore yang diatur ke D3D12DDI_BARRIER_ACCESS_NO_ACCESS sebelum digunakan dalam cakupan ExecuteCommandLists yang sama. D3D12DDI_BARRIER_ACCESS_NO_ACCESS hanya dapat digunakan bersama dengan D3D12DDI_BARRIER_SYNC_NONE atau D3D12DDI_BARRIER_SYNC_SPLIT. D3D12DDI_BARRIER_ACCESS_NO_ACCESS tidak dapat diatur dengan bit akses lainnya. D3D12DDI_BARRIER_ACCESS_NO_ACCESS menunjukkan bahwa sumber daya tidak diharapkan untuk diakses sampai beberapa hambatan berikutnya atau cakupan ECL berikutnya. Nilai ini berguna dalam alias penghalang ketika subsumber daya tidak diperlukan untuk waktu yang cukup lama sehingga masuk akal untuk membersihkan sub sumber daya dari cache baca apa pun. Ini juga berguna untuk memulai transisi tata letak sebagai tindakan akhir pada sumber daya sebelum akhir cakupan ExecuteCommandLists. Jika SyncAfterD3D12DDI_BARRIER_SYNC_NONE, maka AccessAfter HARUS D3D12DDI_BARRIER_ACCESS_NO_ACCESS. |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 11 (WDDM 3.0) |
Header | d3d12umddi.h |