Compartir a través de


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

Establece un nuevo búfer de color para el dispositivo.

Sintaxis

HRESULT SetRenderTarget(
  [in] DWORD             RenderTargetIndex,
  [in] IDirect3DSurface9 *pRenderTarget
);

Parámetros

[in] RenderTargetIndex

Tipo: DWORD

Índice del destino de representación. Vea la sección Comentarios.

[in] pRenderTarget

Tipo: IDirect3DSurface9*

Puntero a un nuevo búfer de color. Si es NULL, el búfer de color para el RenderTargetIndex correspondiente está deshabilitado. Los dispositivos siempre deben estar asociados a un búfer de color. La nueva superficie de destino de representación debe tener al menos D3DUSAGE_RENDERTARGET especificado.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, el valor devuelto es D3D_OK. Este método devolverá D3DERR_INVALIDCALL si:

  • pRenderTarget = NULL y RenderTargetIndex = 0
  • pRenderTarget es != NULL y el destino de representación no es válido.

Comentarios

El dispositivo puede admitir varios destinos de representación. El número de destinos de representación admitidos por un dispositivo se encuentra en el miembro NumSimultaneousRTs de D3DCAPS9. Consulte Varios destinos de representación (Direct3D 9).

Al establecer un nuevo destino de representación, la ventanilla (vea Ventanillas y recortes (Direct3D 9)) se establecerá en el tamaño completo del nuevo destino de representación.

Algunos hardware prueban la compatibilidad del búfer de galería de símbolos de profundidad con el búfer de color. Si esto se hace, solo se realiza en una compilación de depuración.

Entre las restricciones para usar este método se incluyen las siguientes:

  • El tipo multisample debe ser el mismo para el destino de representación y la superficie de galería de símbolos de profundidad.
  • Los formatos deben ser compatibles con el destino de representación y la superficie de galería de símbolos de profundidad. Consulte IDirect3D9::CheckDepthStencilMatch.
  • El tamaño de la superficie de galería de símbolos de profundidad debe ser mayor o igual que el tamaño del destino de representación.
Estas restricciones solo se validan cuando se usa el tiempo de ejecución de depuración cuando se llama a cualquiera de los métodos Draw de IDirect3DDevice9.

Las texturas de cubo difieren de otras superficies en que son colecciones de superficies. Para llamar a IDirect3DDevice9::SetRenderTarget con una textura de cubo, debe seleccionar una cara individual con IDirect3DCubeTexture9::GetCubeMapSurface y pasar la superficie resultante a IDirect3DDevice9::SetRenderTarget.

Requisitos

   
Plataforma de destino Windows
Encabezado d3d9helper.h (incluya D3D9.h)
Library D3D9.lib

Consulte también

IDirect3DDevice9