Metode IDirect3DDevice9::SetRenderTarget (d3d9helper.h)

Mengatur buffer warna baru untuk perangkat.

Sintaks

HRESULT SetRenderTarget(
  [in] DWORD             RenderTargetIndex,
  [in] IDirect3DSurface9 *pRenderTarget
);

Parameter

[in] RenderTargetIndex

Jenis: DWORD

Indeks target render. Lihat Keterangan.

[in] pRenderTarget

Jenis: IDirect3DSurface9*

Penunjuk ke buffer warna baru. Jika NULL, buffer warna untuk RenderTargetIndex terkait dinonaktifkan. Perangkat harus selalu dikaitkan dengan buffer warna. Permukaan target render baru harus memiliki setidaknya D3DUSAGE_RENDERTARGET ditentukan.

Nilai kembali

Jenis: HRESULT

Jika metode berhasil, nilai yang dikembalikan D3D_OK. Metode ini akan mengembalikan D3DERR_INVALIDCALL jika:

  • pRenderTarget = NULL dan RenderTargetIndex = 0
  • pRenderTarget adalah != NULL dan target render tidak valid.

Keterangan

Perangkat dapat mendukung beberapa target render. Jumlah target render yang didukung oleh perangkat terkandung dalam anggota NumSimultaneousRTs D3DCAPS9. Lihat Beberapa Target Render (Direct3D 9).

Mengatur target render baru akan menyebabkan viewport (lihat Viewports dan Clipping (Direct3D 9)) diatur ke ukuran penuh target render baru.

Beberapa perangkat keras menguji kompatibilitas buffer stensil kedalaman dengan buffer warna. Jika ini dilakukan, ini hanya dilakukan dalam build debug.

Pembatasan untuk menggunakan metode ini meliputi hal-hal berikut:

  • Jenis multisample harus sama untuk target render dan permukaan stensil kedalaman.
  • Format harus kompatibel untuk target render dan permukaan stensil kedalaman. Lihat IDirect3D9::CheckDepthStencilMatch.
  • Ukuran permukaan stensil kedalaman harus lebih besar dari atau sama dengan ukuran target render.
Pembatasan ini hanya divalidasi saat menggunakan runtime debug saat salah satu metode Gambar IDirect3DDevice9dipanggil.

Tekstur kubus berbeda dari permukaan lain karena merupakan koleksi permukaan. Untuk memanggil IDirect3DDevice9::SetRenderTarget dengan tekstur kubus, Anda harus memilih wajah individual menggunakan IDirect3DCubeTexture9::GetCubeMapSurface dan meneruskan permukaan yang dihasilkan ke IDirect3DDevice9::SetRenderTarget.

Persyaratan

   
Target Platform Windows
Header d3d9helper.h (termasuk D3D9.h)
Pustaka D3D9.lib

Lihat juga

IDirect3DDevice9