Bagikan melalui


struktur DXGI1_3_DDI_BASE_FUNCTIONS (dxgiddi.h)

Berisi penunjuk ke fungsi yang dapat diterapkan oleh driver tampilan Windows Display Driver Model (WDDM) 1.3 dan yang lebih baru untuk melakukan tugas tingkat rendah seperti menyajikan bingkai yang dirender ke output, mengontrol gamma, mendapatkan pemberitahuan mengenai permukaan interoperabilitas Antarmuka Perangkat Grafis (GDI) bersama dan Windows, dan mengelola transisi layar penuh.

Sintaks

typedef struct DXGI1_3_DDI_BASE_FUNCTIONS {
  HRESULT()(DXGI_DDI_ARG_PRESENT *) * pfnPresent;
  HRESULT()(DXGI_DDI_ARG_GET_GAMMA_CONTROL_CAPS *) * pfnGetGammaCaps;
  HRESULT()(DXGI_DDI_ARG_SETDISPLAYMODE *) * pfnSetDisplayMode;
  HRESULT()(DXGI_DDI_ARG_SETRESOURCEPRIORITY *) * pfnSetResourcePriority;
  HRESULT()(DXGI_DDI_ARG_QUERYRESOURCERESIDENCY *) * pfnQueryResourceResidency;
  HRESULT()(DXGI_DDI_ARG_ROTATE_RESOURCE_IDENTITIES *) * pfnRotateResourceIdentities;
  HRESULT()(DXGI_DDI_ARG_BLT *) * pfnBlt;
  HRESULT()(DXGI_DDI_ARG_RESOLVESHAREDRESOURCE *) * pfnResolveSharedResource;
  HRESULT()(DXGI_DDI_ARG_BLT1 *) * pfnBlt1;
  HRESULT()(DXGI_DDI_ARG_OFFERRESOURCES *) * pfnOfferResources;
  HRESULT()(DXGI_DDI_ARG_RECLAIMRESOURCES *) * pfnReclaimResources;
  HRESULT()(DXGI_DDI_ARG_GETMULTIPLANEOVERLAYCAPS *) * pfnGetMultiplaneOverlayCaps;
  HRESULT()(DXGI_DDI_ARG_GETMULTIPLANEOVERLAYGROUPCAPS *) * pfnGetMultiplaneOverlayGroupCaps;
  HRESULT()(void *) * pfnReserved1;
  HRESULT()(DXGI_DDI_ARG_PRESENTMULTIPLANEOVERLAY *) * pfnPresentMultiplaneOverlay;
  HRESULT()(void *) * pfnReserved2;
  HRESULT()(DXGI_DDI_ARG_PRESENT1 *) * pfnPresent1;
  HRESULT()(DXGI_DDI_ARG_CHECKPRESENTDURATIONSUPPORT *) * pfnCheckPresentDurationSupport;
} DXGI1_3_DDI_BASE_FUNCTIONS;

Anggota

pfnPresent

Penunjuk ke fungsi PresentDXGI driver.

pfnGetGammaCaps

Penunjuk ke fungsi GetGammaCapsDXGI driver.

pfnSetDisplayMode

Penunjuk ke fungsi SetDisplayModeDXGI driver.

pfnSetResourcePriority

Penunjuk ke fungsi SetResourcePriorityDXGI driver.

pfnQueryResourceResidency

Penunjuk ke fungsi QueryResourceResidencyDXGI driver.

pfnRotateResourceIdentities

Penunjuk ke fungsi RotateResourceIdentitiesDXGI driver.

pfnBlt

Penunjuk ke fungsi BltDXGI driver.

pfnResolveSharedResource

Penunjuk ke fungsi ResolveSharedResourceDXGI driver.

pfnBlt1

Penunjuk ke fungsi Blt1DXGI driver.

pfnOfferResources

Penunjuk ke fungsi pfnOfferResources driver.

pfnReclaimResources

Penunjuk ke fungsi pfnReclaimResources driver.

pfnGetMultiplaneOverlayCaps

Dipanggil oleh runtime DXGI untuk meminta agar driver tampilan mode pengguna mendapatkan kemampuan bidang overlay dasar. Secara opsional diimplementasikan oleh WDDM 1.3 dan driver tampilan mode pengguna yang lebih baru.

pfnGetMultiplaneOverlayGroupCaps

Dipanggil oleh runtime DXGI untuk meminta agar driver tampilan mode pengguna mendapatkan sekelompok kemampuan bidang overlay. Secara opsional diimplementasikan oleh WDDM 1.3 dan driver tampilan mode pengguna yang lebih baru.

Catatan Fungsi ini dipanggil untuk setiap grup kemampuan yang dilaporkan driver.
 

Sintaks

pfnGetMultiplaneOverlayGroupCaps GetMultiplaneOverlayGroupCaps;

HRESULT __stdcall* GetMultiplaneOverlayGroupCaps(
   DXGI_DDI_ARG_GETMULTIPLANEOVERLAYGROUPCAPS *pGroupCaps
)
{ ... }

Parameter

pGroupCaps Penunjuk ke struktur DXGI_DDI_ARG_GETMULTIPLANEOVERLAYGROUPCAPS yang menentukan grup kemampuan bidang overlay.

Nilai kembali

Mengembalikan salah satu nilai berikut.

  • S_OK Driver berhasil menyediakan kemampuan sarana overlay.
  • D3DDDIERR_DEVICEREMOVED Driver mendeteksi bahwa adaptor tampilan telah dihapus, sehingga pengandar tidak menyelesaikan operasi. Jika driver tidak mengetahui penghapusan adaptor, driver tidak diperlukan untuk mengembalikan kode kesalahan ini.

pfnReserved1

Dicadangkan untuk penggunaan sistem.

pfnPresentMultiplaneOverlay

Dipanggil oleh runtime Microsoft DirectX Graphics Infrastructure (DXGI) untuk memberi tahu driver tampilan mode pengguna bahwa aplikasi selesai dirender dan meminta agar driver menampilkan permukaan sumber dengan menyalin atau membalik atau bahwa driver melakukan operasi pengisian warna. Harus diimplementasikan oleh driver Windows Display Driver Model (WDDM) 1.3 atau yang lebih baru yang mendukung overlay multiplane.

Ketika driver tampilan mode pengguna berhasil menyelesaikan pemrosesan panggilan ke fungsi ini, ia menyajikan permukaan sumber ke tampilan dengan memanggil fungsi pfnPresentMultiPlaneOverlayCb (DXGI).

PFND3DDDI_PRESENTMULTIPLANEOVERLAY pfnPresentMultiPlaneOverlay;

HRESULT __stdcall* pfnPresentMultiPlaneOverlay(
   DXGI_DDI_ARG_PRESENTMULTIPLANEOVERLAY *pPresentDXGI
)
{ ... }

Parameter

pPresentDXGI Penunjuk ke struktur DXGI_DDI_ARG_PRESENTMULTIPLANEOVERLAY yang menjelaskan cara menampilkan ke permukaan tujuan.

Nilai kembali

Jika fungsi panggilan balik ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

pfnReserved2

Dicadangkan untuk penggunaan sistem.

pfnPresent1

Memberi tahu driver tampilan mode pengguna bahwa aplikasi selesai dirender dan bahwa semua kepemilikan sumber daya bersama dirilis, dan meminta driver ditampilkan ke permukaan tujuan.

Sintaks

pfnPresent1 Present1DXGI;

HRESULT __stdcall* Present1DXGI(
   DXGI_DDI_ARG_PRESENT1 *pPresentData
)
{ ... }

Parameter

pPresentData [in] Penunjuk ke struktur DXGI_DDI_ARG_PRESENT1 yang menjelaskan cara menampilkan ke permukaan tujuan.

Keterangan

Anggota hDevice dari struktur DXGI_DDI_ARG_PRESENT1 yang dituju parameter pPresentData adalah handel yang sama dengan fungsi CreateDevice (D3D10) driver yang diteruskan kembali ke runtime di anggota hDrvDevice dari struktur D3D10DDIARG_CREATEDEVICE . Oleh karena itu, penulis driver harus menentukan jenis handel ini dengan hati-hati. Selain itu, driver dapat menyediakan implementasi yang berbeda dari fungsi pfnPresent1(DXGI) berdasarkan implementasi DDI yang menangani panggilan ke CreateDevice(D3D10). Runtime tidak akan pernah mencampur handel driver di seluruh implementasi DDI.

Anggota pDXGIContextdari DXGI_DDI_ARG_PRESENT1 adalah mekanisme komunikasi buram. Runtime meneruskan konteks DXGI ini ke driver. Driver harus menyalin konteks DXGI ini tidak berubah ke anggota pDXGIContext dari struktur DXGIDDICB_PRESENT ketika driver memanggil fungsi pfnPresentCbDXGI .

Driver harus mengirimkan semua data render yang dibuat sebagian (buffer perintah) menggunakan fungsi pfnRenderCb , dan driver harus melakukan satu panggilan ke pfnPresentCbDXGI. Saat memanggil salah satu panggilan balik ini, driver harus mengikuti aturan utas fungsi PresentDXGI .

Catatan Ketika fungsi pfnPresent1 (DXGI) driver menyalin konten berformat sRGB dari permukaan sumber ke permukaan tujuan non-sRGB, driver harus menyalin konten sRGB tidak berubah (yaitu, driver tidak boleh melakukan konversi sRGB ke linier).

Aturan utas

Aturan ini berlaku apakah driver mendukung utas gratis atau tidak:

  • Driver menunjukkan dukungan untuk utas gratis dengan mengatur anggota Caps dari struktur D3D11DDI_THREADING_CAPS ke D3D11DDICAPS_FREETHREADED. Dalam hal ini:
    • Hanya satu utas yang dapat bekerja terhadap handel konteks HCONTEXT pada satu waktu.
    • Driver harus memanggil pfnPresentCbDXGI hanya ketika fungsi pfnPresent1 (DXGI) driver dipanggil, dan dengan utas yang sama yang disebut pfnPresent1(DXGI).
  • Ketika driver tidak menunjukkan dukungan untuk utas bebas, driver hanya dapat memanggil fungsi panggilan balik ketika utas telah dipanggil ke driver. Driver juga masih harus memanggil panggilan balik pfnPresentCbDXGI dalam konteks pfnPresent1(DXGI).
Untuk informasi lebih lanjut tentang utas, lihat Perubahan dari Direct3D 10.

pfnCheckPresentDurationSupport

Penunjuk ke fungsi pfnCheckPresentDurationSupport (DXGI) driver.

Keterangan

Untuk informasi selengkapnya tentang cara menggunakan struktur ini, lihat Mendukung DXGI DDI.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8.1,WDDM 1.3 dan yang lebih baru
Server minimum yang didukung Windows Server 2012 R2
Header dxgiddi.h (termasuk D3d10umddi.h)

Lihat juga

CreateDevice(D3D10)

D3D10DDIARG_CREATEDEVICE

DXGI1_2_DDI_BASE_FUNCTIONS

DXGI_DDI_BASE_ARGS

DXGI_DDI_BASE_FUNCTIONS