Bagikan melalui


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

Lihat juga

IDirect3DDevice9

Perangkat Hilang (Direct3D 9)

Multihead (Direct3D 9)

Atur ulang