Metode IDirect3DDevice9::P resent (d3d9.h)
Menyajikan konten buffer berikutnya dalam urutan buffer belakang yang dimiliki oleh perangkat.
Sintaks
HRESULT Present(
[in] const RECT *pSourceRect,
[in] const RECT *pDestRect,
[in] HWND hDestWindowOverride,
[in] const RGNDATA *pDirtyRegion
);
Parameter
[in] pSourceRect
Jenis: const RECT*
Penunjuk ke nilai yang harus NULL kecuali rantai pertukaran dibuat dengan D3DSWAPEFFECT_COPY. pSourceRect adalah penunjuk ke struktur RECT yang berisi persegi panjang sumber. Jika NULL, seluruh permukaan sumber disajikan. Jika persegi panjang melebihi permukaan sumber, persegi panjang dipotong ke permukaan sumber.
[in] pDestRect
Jenis: const RECT*
Penunjuk ke nilai yang harus NULL kecuali rantai pertukaran dibuat dengan D3DSWAPEFFECT_COPY. pDestRect adalah penunjuk ke struktur RECT yang berisi persegi panjang tujuan, dalam koordinat klien jendela. Jika NULL, seluruh area klien akan diisi. Jika persegi melebihi area klien tujuan, persegi panjang dipotong ke area klien tujuan.
[in] hDestWindowOverride
Jenis: HWND
Penunjuk ke jendela tujuan yang area kliennya diambil sebagai target untuk presentasi ini. Jika nilai ini ADALAH NULL, runtime menggunakan anggota D3DPRESENT_PARAMETERS hDeviceWindow untuk presentasi.
[in] pDirtyRegion
Jenis: const RGNDATA*
Nilai harus NULL kecuali rantai pertukaran dibuat dengan D3DSWAPEFFECT_COPY. Untuk informasi selengkapnya tentang rantai pertukaran, lihat Membalik Permukaan (Direct3D 9) dan D3DSWAPEFFECT. Jika nilai ini bukan NULL, wilayah yang terkandung dinyatakan dalam koordinat buffer belakang. Persegi panjang dalam wilayah adalah set piksel minimal yang perlu diperbarui. Metode ini memperhitungkan persegi panjang ini saat mengoptimalkan presentasi dengan hanya menyalin piksel dalam wilayah, atau beberapa set persegi panjang yang diperluas yang cocok. Ini adalah bantuan untuk pengoptimalan saja, dan aplikasi tidak boleh mengandalkan wilayah yang disalin dengan tepat. Implementasi dapat memilih untuk menyalin seluruh persegi panjang sumber.
Menampilkan nilai
Jenis: HRESULT
Kemungkinan nilai yang dikembalikan meliputi: D3D_OK atau D3DERR_DEVICEREMOVED (lihat D3DERR).
Keterangan
Jika perlu, operasi peregangan diterapkan untuk mentransfer piksel dalam persegi panjang sumber ke persegi panjang tujuan di area klien jendela target.
Ada akan gagal, mengembalikan D3DERR_INVALIDCALL, jika dipanggil antara pasangan BeginScene dan EndScene kecuali target render bukan target render saat ini (seperti buffer belakang yang Anda dapatkan dari membuat rantai pertukaran tambahan). Ini adalah perilaku baru untuk Direct3D 9.
Persyaratan
Target Platform | Windows |
Header | d3d9.h (termasuk D3D9.h) |
Pustaka | D3D9.lib |