PFND3DDDI_PRESENTCB fungsi panggilan balik (d3dumddi.h)
Fungsi pfnPresentCb menyalin konten dari alokasi sumber.
Sintaks
PFND3DDDI_PRESENTCB Pfnd3dddiPresentcb;
HRESULT Pfnd3dddiPresentcb(
HANDLE hDevice,
D3DDDICB_PRESENT *unnamedParam2
)
{...}
Parameter
hDevice
Handel ke perangkat tampilan (konteks grafis).
unnamedParam2
pData [in]
Penunjuk ke struktur D3DDDICB_PRESENT yang menjelaskan alokasi sumber tempat konten disalin.
Nilai kembali
pfnPresentCb mengembalikan salah satu nilai berikut:
Menampilkan kode | Deskripsi |
---|---|
S_OK | Konten berhasil disalin. |
E_OUTOFMEMORY | pfnPresentCb tidak dapat diselesaikan karena memori yang tidak mencukuum. |
E_INVALIDARG | Parameter divalidasi dan ditentukan salah. |
Fungsi ini mungkin juga mengembalikan nilai HRESULT lainnya.
Keterangan
Driver tampilan mode pengguna mengatur anggota hContext dari struktur D3DDDICB_PRESENT yang ditunjukkan oleh parameter pData ke konteks yang sebelumnya dibuat dengan memanggil fungsi pfnCreateContextCb . Driver tampilan mode pengguna harus membuat setidaknya satu konteks ketika runtime Microsoft Direct3D memanggil fungsi CreateDevice atau CreateDevice (D3D10) driver untuk membuat perangkat. Runtime Direct3D mengirimkan operasi saat ini ke konteks yang dibuat.
Catatan Direct3D Versi 11: Untuk informasi selengkapnya tentang cara driver memanggil pfnPresentCb, lihat Perubahan dari Direct3D 10.
Contoh
Contoh kode berikut menunjukkan cara mengisi warna permukaan tujuan.
HRESULT hr=S_OK;
// A color-fill request that does not have a source surface
D3DDDICB_PRESENT PresentCBData = {0};
PresentCBData.hContext = m_sContexts[MULTI_ENGINE_NODE_3D].hContext;
PresentCBData.hSrcAllocation = NULL;
if (pPresent->hDstResource) {
DWORD dwDstSurf = ((DWORD)(DWORD_PTR)pPresent->hDstResource) + pPresent->DstSubResourceIndex;
_ASSERT(dwDstSurf < m_RTbl.Size());
m_RTbl[dwDstSurf].m_qwBatch = m_qwBatch;
PresentCBData.hDstAllocation = R200GetSurfaceAllocHandle(m_pR200Ctx, dwDstSurf);
}
hr = m_d3dCallbacks.pfnPresentCb(m_hD3D, &PresentCBData);
return hr;
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Desktop |
Header | d3dumddi.h (termasuk D3dumddi.h) |
Lihat juga
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