Metode IDirect3DDevice9::CreateDepthStencilSurface (d3d9helper.h)

Membuat sumber daya stensil kedalaman.

Sintaks

HRESULT CreateDepthStencilSurface(
  [in]          UINT                Width,
  [in]          UINT                Height,
  [in]          D3DFORMAT           Format,
  [in]          D3DMULTISAMPLE_TYPE MultiSample,
  [in]          DWORD               MultisampleQuality,
  [in]          BOOL                Discard,
  [out, retval] IDirect3DSurface9   **ppSurface,
  [in]          HANDLE              *pSharedHandle
);

Parameter

[in] Width

Jenis: UINT

Lebar permukaan stensil kedalaman, dalam piksel.

[in] Height

Jenis: UINT

Tinggi permukaan stensil kedalaman, dalam piksel.

[in] Format

Jenis: D3DFORMAT

Anggota jenis D3DFORMAT yang dijumlahkan, menjelaskan format permukaan stensil kedalaman. Nilai ini harus menjadi salah satu format stensil kedalaman yang dijumlahkan untuk perangkat ini.

[in] MultiSample

Jenis: D3DMULTISAMPLE_TYPE

Anggota jenis D3DMULTISAMPLE_TYPE yang dijumlahkan, menjelaskan jenis buffer multisampling. Nilai ini harus menjadi salah satu jenis multisample yang diizinkan. Ketika permukaan ini diteruskan ke IDirect3DDevice9::SetDepthStencilSurface, jenis multisample-nya harus sama dengan target render yang ditetapkan oleh IDirect3DDevice9::SetRenderTarget.

[in] MultisampleQuality

Jenis: DWORD

Tingkat kualitas. Rentang yang valid adalah antara nol dan satu kurang dari tingkat yang dikembalikan oleh pQualityLevels yang digunakan oleh IDirect3D9::CheckDeviceMultiSampleType. Meneruskan nilai yang lebih besar mengembalikan kesalahan D3DERR_INVALIDCALL. Nilai MultisampleQuality dari target render berpasangan, permukaan stensil kedalaman, dan jenis MultiSample semuanya harus cocok.

[in] Discard

Jenis: BOOL

Atur bendera ini ke TRUE untuk mengaktifkan pembuangan z-buffer, dan FALSE sebaliknya. Jika bendera ini diatur, konten buffer stensil kedalaman akan tidak valid setelah memanggil IDirect3DDevice9::P resent atau IDirect3DDevice9::SetDepthStencilSurface dengan permukaan kedalaman yang berbeda.

Bendera ini memiliki perilaku yang sama dengan konstanta, D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL, dalam D3DPRESENTFLAG.

[out, retval] ppSurface

Jenis: IDirect3DSurface9**

Alamat penunjuk ke antarmuka IDirect3DSurface9 , mewakili sumber daya permukaan stensil kedalaman yang dibuat.

[in] pSharedHandle

Jenis: HANDEL*

Dicadangkan. Atur parameter ini ke NULL. Parameter ini dapat digunakan di Direct3D 9 untuk Windows Vista untuk berbagi sumber daya.

Mengembalikan nilai

Jenis: HRESULT

Jika metode berhasil, nilai yang dikembalikan adalah D3D_OK. Jika metode gagal, nilai yang dikembalikan bisa menjadi salah satu dari yang berikut: D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.

Keterangan

Kelas memori buffer stensil kedalaman selalu D3DPOOL_DEFAULT.

Persyaratan

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

Lihat juga

IDirect3DDevice9

IDirect3DDevice9::UpdateSurface