IDirect3DDevice9::CreateDepthStencilSurface-Methode (d3d9.h)
Erstellt eine Tiefenschablonenressource.
Syntax
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
Typ: UINT
Breite der Tiefenschablonenoberfläche in Pixel.
[in] Height
Typ: UINT
Höhe der Tiefenschablonenoberfläche in Pixel.
[in] Format
Typ: D3DFORMAT
Member des D3DFORMAT aufgezählten Typs, der das Format der Tiefenschablonenoberfläche beschreibt. Dieser Wert muss eines der aufgezählten Tiefenschablonenformate für dieses Gerät sein.
[in] MultiSample
Typ: D3DMULTISAMPLE_TYPE
Member des D3DMULTISAMPLE_TYPE aufgezählten Typs, der den Multisamplingpuffertyp beschreibt. Dieser Wert muss einer der zulässigen Multisampeltypen sein. Wenn diese Oberfläche an IDirect3DDevice9::SetDepthStencilSurface übergeben wird, muss der Multisampeltyp mit dem des von IDirect3DDevice9::SetRenderTarget festgelegten Renderziels identisch sein.
[in] MultisampleQuality
Typ: DWORD
Qualitätsstufe. Der gültige Bereich liegt zwischen 0 und eins kleiner als die von pQualityLevels zurückgegebene Ebene, die von IDirect3D9::CheckDeviceMultiSampleType verwendet wird. Wenn Sie einen größeren Wert übergeben, wird der Fehler D3DERR_INVALIDCALL zurückgegeben. Die MultisampleQuality-Werte von gekoppelten Renderzielen, Tiefenschablonenoberflächen und der MultiSample-Typ müssen alle übereinstimmen.
[in] Discard
Typ: BOOL
Legen Sie dieses Flag auf TRUE fest, um das Verwerfen von Z-Puffern zu aktivieren, andernfalls AUF FALSE . Wenn dieses Flag festgelegt ist, ist der Inhalt des Tiefenschablonenpuffers ungültig, nachdem entweder IDirect3DDevice9::P resent oder IDirect3DDevice9::SetDepthStencilSurface mit einer anderen Tiefenoberfläche aufgerufen wurde.
Dieses Flag hat das gleiche Verhalten wie die Konstante D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL in D3DPRESENTFLAG.
[out, retval] ppSurface
Typ: IDirect3DSurface9**
Adresse eines Zeigers auf eine IDirect3DSurface9-Schnittstelle , die die erstellte Tiefenschablonen-Oberflächenressource darstellt.
[in] pSharedHandle
Typ: HANDLE*
Reserviert. Legen Sie diesen Parameter auf NULL fest. Dieser Parameter kann in Direct3D 9 für Windows Vista zum Freigeben von Ressourcen verwendet werden.
Rückgabewert
Typ: HRESULT
Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert wie folgt aussehen: D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.
Hinweise
Die Speicherklasse des Tiefenschablonenpuffers ist immer D3DPOOL_DEFAULT.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d9.h (einschließlich D3D9.h) |
Bibliothek | D3D9.lib |