Peningkatan performa penyajian Direct3D
Driver Windows Display Driver Model (WDDM) 1.3 dan yang lebih baru dapat mendukung peningkatan performa penyajian Microsoft Direct3D yang memungkinkan perangkat keras Direct3D 9 menggunakan buffer dan penghitung perintah perangkat keras dengan lebih baik dan membuat salinan memori sistem yang efisien ke subsumber daya. Kemampuan ini, yang mencerminkan beberapa kemampuan yang tersedia untuk perangkat keras Direct3D Versi 10, baru dimulai dengan Windows 8.1.
Pemangkasan sumber daya Direct3D 11.1 baru dan peningkatan performa default peta juga tersedia. Skenario default peta diuraikan di bagian Perubahan perilaku di bawah ini.
Referensi performa penyajian
Bagian referensi ini menjelaskan antarmuka driver perangkat mode pengguna (DDI).
Fungsi performa penyajian Direct3D yang diterapkan oleh driver mode pengguna
Bagian ini berisi fungsi yang diterapkan driver tampilan Windows Display Driver Model (WDDM) 1.3 dan yang lebih baru untuk mendukung peningkatan performa penyajian Microsoft Direct3D.
PFND3DDDI_FLUSH1: PFND3DDDI_CHECKCOUNTERINFO
PFND3DDDI_CHECKCOUNTER: PFND3DDDI_UPDATESUBRESOURCEUP
Struktur dan enumerasi performa penyajian Direct3D
Struktur dan enumerasi mode pengguna ini mendukung peningkatan performa penyajian dan baru atau diperbarui untuk Windows 8.1. Semua berlaku untuk driver Direct3D Level 9 kecuali untuk D3D11_1_DDI_FLUSH_FLAGS.
- D3DDDI_FLUSH_FLAGS (baru)
- D3DDDIARG_COPYFLAGS (baru)
- D3DDDIARG_COUNTER_INFO (baru)
- D3DDDIARG_UPDATESUBRESOURCEUP (baru)
- D3DDDICAPS_SIMPLE_INSTANCING_SUPPORT (baru)
- Driver CreateResource2 (WDDM 1.3 dan yang lebih baru Direct3D Level 9 harus mengembalikan kode kesalahan E_INVALIDARG jika nilai bendera CaptureBuffer diatur)
- D3D11_1_DDI_FLUSH_FLAGS (konstanta D3DWDDM1_3DDI_TRIM_MEMORY ditambahkan)
- D3DDDI_DEVICEFUNCS (pfnFlush1, pfnCheckCounterInfo, pfnCheckCounter, pfnUpdateSubresourceUP anggota ditambahkan)
- D3DDDI_POOL (konstanta D3DDDIPOOL_STAGINGMEM ditambahkan)
- D3DDDICAPS_TYPE (konstanta D3DDDICAPS_GET_SIMPLE_INSTANCING_SUPPORT ditambahkan)
- GetCaps (info baru dalam Keterangan)
Persyaratan implementasi DDI dimulai dengan WDDM 1.3
Dimulai dengan WDDM 1.3, fungsi berikut diperlukan atau opsional untuk diterapkan driver mode pengguna.
Grup fungsi | Deskripsi |
---|---|
Fungsi Direct3D 9 yang bersifat opsional sebelum WDDM 1.3. Sekarang diperlukan: |
|
Fungsi Direct3D 9 yang tersedia dimulai dengan WDDM 1.3. Driver harus mengimplementasikan semua fungsi ini atau tidak satu pun: |
|
Ketika fungsi opsional WDDM 1.3 dan yang lebih baru segera di atas diterapkan, fungsi-fungsi ini memiliki perubahan perilaku terkait: |
Skenario ini berlaku ketika GetCaps dipanggil:
|
Fungsi Direct3D 11 ini memiliki perubahan perilaku terkait: |
|
Perubahan perilaku untuk panggilan ke fungsi buat, peta, dan batalkan peta sumber daya
Untuk fungsi-fungsi ini yang diimplementasikan oleh driver WDDM 1.3 dan yang lebih baru, runtime Direct3D menyediakan serangkaian nilai input terbatas untuk skenario default peta. Nilai terbatas ini hanya berlaku untuk driver yang mendukung tingkat fitur 11.1 dan yang lebih baru.
CreateResource(D3D11)function—
Input ini D3D11DDIARG_CREATERESOURCE anggota struktur dibatasi:
Anggota | Deskripsi |
---|---|
ResourceDimension dan Penggunaan |
Perubahan perilaku ini hanya berlaku ketika runtime Direct3D menyediakan jenis D3D10DDIRESOURCE_BUFFER untuk ResourceDimension dan jenis D3D10_DDI_USAGE_DEFAULT untuk Penggunaan. |
BindFlags |
Runtime Direct3D hanya mengatur nilai D3D10_DDI_BIND_SHADER_RESOURCE dan D3D11_DDI_BIND_UNORDERED_ACCESS . |
MapFlags |
Jika semua persyaratan anggota lain yang tercantum di sini terpenuhi, runtime dapat mengatur nilai D3D10_DDI_MAP_READ, D3D10_DDI_MAP_WRITE, dan D3D10_DDI_MAP_READWRITE . Driver harus mendukung nilai-nilai ini. Nilai D3D10_DDI_MAP_WRITE_DISCARD dan D3D10_DDI_MAP_WRITE_NOOVERWRITE tidak valid. |
MiscFlags |
Runtime hanya mengatur nilai D3D11_DDI_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS dan D3D11_DDI_RESOURCE_MISC_BUFFER_STRUCTURED . |
Format |
Runtime hanya mengatur nilai DXGI_FORMAT_UNKNOWN . |
SampleDesc |
Runtime mengatur DXGI_SAMPLE_DESC. Hitung anggota ke 1, dan anggota Kualitas ke nol. |
MipLevels |
Runtime mengatur nilai ke 1. |
ArraySize |
Runtime mengatur nilai ke 1. |
pPrimaryDesc |
Runtime mengatur nilai ke NULL. |
Parameter input ke ResourceMap ini dibatasi:
Parameter | Deskripsi |
---|---|
hResource |
Runtime Direct3D hanya mengatur sumber daya D3D10DDIRESOURCE_BUFFER saat nilai non-nol untuk MapFlags diatur dalam panggilan pembuatan ke CreateResource(D3D11). |
Runtime hanya mengatur nilai DXGI_FORMAT_UNKNOWN . |
|
Sub sumber daya |
Runtime hanya mengatur nilai ke 0. |
DDIMap |
Jika semua persyaratan anggota lain yang tercantum di sini terpenuhi, runtime dapat mengatur nilai D3D10_DDI_MAP_READ, D3D10_DDI_MAP_WRITE, atau D3D10_DDI_MAP_READWRITE , yang cocok dengan nilai MapFlags yang ditetapkan dalam panggilan pembuatan ke CreateResource(D3D11). |
Bendera |
Meskipun nilai input dari runtime tidak dibatasi, driver harus dapat mendukung nilai D3D10_DDI_MAP_FLAG_DONOTWAIT . |
pMappedSubResource |
Meskipun nilai input dari runtime tidak dibatasi, driver harus menetapkan pointer yang dapat di-cache CPU yang valid ke D3D10DDI_MAPPED_SUBRESOURCE. anggota pData dan harus mengatur RowPitch dan DepthPitch agar sesuai dengan ukuran buffer dan data yang disediakan dalam pData. |
Parameter input ke ResourceUnmap ini dibatasi:
Parameter | Deskripsi |
---|---|
hDevice |
Meskipun nilai input dari runtime Direct3D tidak dibatasi, nilai yang cocok dengan nilai hDevice dari panggilan ResourceMap asli. |
hResource |
Runtime hanya menetapkan sumber daya D3D10DDIRESOURCE_BUFFER saat nilai bukan nol untuk MapFlags diatur dalam panggilan pembuatan ke CreateResource(D3D11). |
Sub sumber daya |
Runtime hanya mengatur nilai ke 0. |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk