PFND3DDDI_BLT fungsi panggilan balik (d3dumddi.h)
Fungsi Blt menyalin konten permukaan sumber ke permukaan tujuan.
Sintaks
PFND3DDDI_BLT Pfnd3dddiBlt;
HRESULT Pfnd3dddiBlt(
HANDLE hDevice,
const D3DDDIARG_BLT *unnamedParam2
)
{...}
Parameter
hDevice
Handel ke perangkat tampilan (konteks grafis).
unnamedParam2
pData [in]
Penunjuk ke struktur D3DDDIARG_BLT yang menjelaskan parameter transfer blok bit (bitblt).
Menampilkan nilai
Blt mengembalikan salah satu nilai berikut:
Menampilkan kode | Deskripsi |
---|---|
S_OK | Bitblt untuk sumber daya berhasil dilakukan. |
E_OUTOFMEMORY | Blt tidak dapat mengalokasikan memori yang diperlukan untuk menyelesaikannya. |
Keterangan
Runtime Microsoft Direct3D memanggil fungsi Blt driver tampilan mode pengguna untuk menyalin konten permukaan sumber ke permukaan tujuan. Setelah memetakan referensi permukaan ke referensi alokasi, driver tampilan mode pengguna harus mengeluarkan perintah perangkat keras yang sesuai. Jika alokasi sumber atau tujuan berada dalam memori sistem, driver tampilan mode pengguna mungkin diperlukan untuk menyinkronkan (yaitu, panggil fungsi pfnRenderCb ) jika aliran perintah perangkat keras yang luar biasa berisi referensi ke alokasi memori sistem. Jika alokasi sumber dan tujuan berada dalam memori sistem, driver harus disinkronkan seperlunya tetapi tidak boleh menyalin konten permukaan sumber. Runtime Direct3D menyalin konten setelah panggilan ke pfnRenderCb kembali.
Driver tampilan mode pengguna harus menangani kondisi berikut yang mungkin terjadi selama operasi salin:
- Permukaan tujuan dan sumber adalah bagian dari sumber daya yang sama (yaitu, anggota hSrcResource dan hDstResourceD3DDDIARG_BLT menentukan handel ke sumber daya yang sama).
- Persegi panjang sumber dan tujuan tumpang tindih (yaitu, koordinat struktur RECT di anggota SrcRect dan DstRect D3DDDIARG_BLT tumpang tindih).
Driver tampilan mode pengguna harus mendukung colorkeying hanya dengan format yang diperkenalkan sebelum Microsoft DirectX 8.0. Untuk format yang diperkenalkan di Runtime DirectX 8.0 dan yang lebih baru, dukungan colorkeying tidak diperlukan.
Jenis bitblt yang akan dilakukan ditunjukkan melalui bendera bit-field yang ditentukan dalam anggota BenderaD3DDDIARG_BLT. Memori video ke bitblt memori video dapat mencakup colorkeying, stretching, mirroring, dan konversi format linear-to-sRGB. Memori sistem ke bitblt memori video dapat mencakup peregangan dan konversi format linear-ke-sRGB; namun, jenis bitblt ini tidak pernah termasuk pencerminan atau colorkeying. Semua memori video ke bitblt memori sistem dan memori sistem ke bitblt memori sistem hanyalah salinan lurus; artinya, jenis bitblt ini tidak pernah mencakup peregangan, pencerminan, colorkeying, atau konversi format linear-ke-sRGB. Untuk informasi selengkapnya tentang format sRGB, lihat situs web sRGB .
Untuk informasi selengkapnya tentang aturan yang harus diikuti fungsi Blt saat mengonversi nilai stensil kedalaman, lihat Menyalin Nilai Depth-Stencil.
Runtime Direct3D dapat memanggil fungsi Blt driver tampilan mode pengguna untuk menyalin konten jenis permukaan sumber apa pun (seperti, jenis offscreen-plain, jenis render-target, atau jenis tekstur) ke jenis permukaan tujuan lainnya.
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) |