Método IDirect3DDevice9::SetDepthStencilSurface (d3d9helper.h)

Define a superfície do estêncil de profundidade.

Sintaxe

HRESULT SetDepthStencilSurface(
  [in] IDirect3DSurface9 *pNewZStencil
);

Parâmetros

[in] pNewZStencil

Tipo: IDirect3DSurface9*

Endereço de um ponteiro para uma interface IDirect3DSurface9 que representa a superfície do estêncil de profundidade. Definir isso como NULL desabilita a operação de estêncil de profundidade.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será D3D_OK. Se pZStencilSurface for diferente de NULL, o valor retornado será D3DERR_INVALIDCALL quando a superfície de estêncil for inválida.

Comentários

As restrições para usar esse método incluem o seguinte:

  • O tipo multisample deve ser o mesmo para o destino de renderização e a superfície de estêncil de profundidade.
  • Os formatos devem ser compatíveis com o destino de renderização e a superfície de estêncil de profundidade. Consulte IDirect3D9::CheckDepthStencilMatch.
  • O tamanho da superfície de estêncil de profundidade deve ser maior ou igual ao tamanho do destino de renderização.
Essas restrições são validadas somente ao usar o runtime de depuração quando qualquer um dos métodos Draw IDirect3DDevice9é chamado.

As texturas de cubo diferem de outras superfícies, pois são coleções de superfícies. Para chamar IDirect3DDevice9::SetDepthStencilSurface com uma textura de cubo, você deve selecionar um rosto individual usando IDirect3DCubeTexture9::GetCubeMapSurface e passar a superfície resultante para IDirect3DDevice9::SetDepthStencilSurface.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d9helper.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

IDirect3DDevice9

IDirect3DDevice9::GetDepthStencilSurface