Metodo IDirect3DDevice9::SetDepthStencilSurface (d3d9.h)

Imposta la superficie di stencil di profondità.

Sintassi

HRESULT SetDepthStencilSurface(
  [in] IDirect3DSurface9 *pNewZStencil
);

Parametri

[in] pNewZStencil

Tipo: IDirect3DSurface9*

Indirizzo di un puntatore a un'interfaccia IDirect3DSurface9 che rappresenta la superficie di stencil di profondità. L'impostazione di questa opzione su NULL disabilita l'operazione di stencil di profondità.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito è D3D_OK. Se pZStencilSurface è diverso da NULL, il valore restituito è D3DERR_INVALIDCALL quando la superficie stencil non è valida.

Commenti

Le restrizioni per l'uso di questo metodo includono quanto segue:

  • Il tipo multisample deve essere lo stesso per la destinazione di rendering e la superficie di stencil di profondità.
  • I formati devono essere compatibili con la destinazione di rendering e la superficie di stencil di profondità. Vedere IDirect3D9::CheckDepthStencilMatch.
  • Le dimensioni della superficie stencil di profondità devono essere maggiori o uguali alle dimensioni della destinazione di rendering.
Queste restrizioni vengono convalidate solo quando si usa il runtime di debug quando vengono chiamati uno dei metodi IDirect3DDevice9Draw.

Le trame del cubo differiscono da altre superfici in cui sono raccolte di superfici. Per chiamare IDirect3DDevice9::SetDepthStencilSurface con una trama del cubo, è necessario selezionare un singolo viso usando IDirect3DCubeTexture9::GetCubeMapSurface e passare la superficie risultante a IDirect3DDevice9::SetDepthStencilSurface.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione d3d9.h (includere D3D9.h)
Libreria D3D9.lib

Vedi anche

IDirect3DDevice9

IDirect3DDevice9::GetDepthStencilSurface