Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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 ihr Multisampeltyp mit dem des von IDirect3DDevice9::SetRenderTarget festgelegten Renderziels identisch sein.
[in] MultisampleQuality
Typ: DWORD
Qualitätsstufe. Der gültige Bereich liegt zwischen null und eins kleiner als der von pQualityLevels zurückgegebene Von IDirect3D9::CheckDeviceMultiSampleType zurückgegebene Ebene. Wenn Sie einen größeren Wert übergeben, wird der Fehler D3DERR_INVALIDCALL zurückgegeben. Die MultisampleQuality-Werte von gekoppelten Renderzielen, Tiefenschablonenflächen und dem 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 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 Tiefenschablonenoberflä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 einer der folgenden sein: D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.
Hinweise
Die Speicherklasse des Tiefenschablonenpuffers ist immer D3DPOOL_DEFAULT.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d9helper.h (einschließlich D3D9.h) |
Bibliothek | D3D9.lib |