Compartir a través de


Método IDirect3DDevice9::CreateDepthStencilSurface (d3d9.h)

Crea un recurso de galería de símbolos de profundidad.

Sintaxis

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
);

Parámetros

[in] Width

Tipo: UINT

Ancho de la superficie de galería de símbolos de profundidad, en píxeles.

[in] Height

Tipo: UINT

Alto de la superficie de galería de símbolos de profundidad, en píxeles.

[in] Format

Tipo: D3DFORMAT

Miembro del D3DFORMAT tipo enumerado, que describe el formato de la superficie de galería de símbolos de profundidad. Este valor debe ser uno de los formatos de galería de símbolos de profundidad enumerados para este dispositivo.

[in] MultiSample

Tipo: D3DMULTISAMPLE_TYPE

Miembro del tipo enumerado D3DMULTISAMPLE_TYPE , que describe el tipo de búfer de muestreo múltiple. Este valor debe ser uno de los tipos multisample permitidos. Cuando esta superficie se pasa a IDirect3DDevice9::SetDepthStencilSurface, su tipo multisample debe ser el mismo que el del destino de representación establecido por IDirect3DDevice9::SetRenderTarget.

[in] MultisampleQuality

Tipo: DWORD

Nivel de calidad. El intervalo válido está comprendido entre cero y uno menor que el nivel devuelto por pQualityLevels usado por IDirect3D9::CheckDeviceMultiSampleType. Si se pasa un valor mayor, se devuelve el error D3DERR_INVALIDCALL. Los valores MultisampleQuality de los destinos de representación emparejados, las superficies de galería de símbolos de profundidad y el tipo MultiSample deben coincidir.

[in] Discard

Tipo: BOOL

Establezca esta marca en TRUE para habilitar el descarte del búfer z y FALSE en caso contrario. Si se establece esta marca, el contenido del búfer de galería de símbolos de profundidad no será válido después de llamar a IDirect3DDevice9::P resent o IDirect3DDevice9::SetDepthStencilSurface con una superficie de profundidad diferente.

Esta marca tiene el mismo comportamiento que la constante, D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL, en D3DPRESENTFLAG.

[out, retval] ppSurface

Tipo: IDirect3DSurface9**

Dirección de un puntero a una interfaz IDirect3DSurface9 , que representa el recurso de superficie de galería de símbolos de profundidad creado.

[in] pSharedHandle

Tipo: HANDLE*

Reservado. Establezca este parámetro en NULL. Este parámetro se puede usar en Direct3D 9 para Windows Vista para compartir recursos.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto puede ser uno de los siguientes: D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.

Comentarios

La clase de memoria del búfer de galería de símbolos de profundidad siempre se D3DPOOL_DEFAULT.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado d3d9.h (incluya D3D9.h)
Library D3D9.lib

Consulte también

IDirect3DDevice9

IDirect3DDevice9::UpdateSurface