Compartir a través de


PFND3D10DDI_SETRENDERTARGETS función de devolución de llamada (d3d10umddi.h)

La función de devolución de llamada SetRenderTargets establece superficies de destino de representación.

Sintaxis

PFND3D10DDI_SETRENDERTARGETS Pfnd3d10ddiSetrendertargets;

void Pfnd3d10ddiSetrendertargets(
  [in] D3D10DDI_HDEVICE unnamedParam1,
  [in] const D3D10DDI_HRENDERTARGETVIEW *unnamedParam2,
  [in] UINT NumViews,
  [in] UINT ClearSlots,
  [in] D3D10DDI_HDEPTHSTENCILVIEW unnamedParam5
)
{...}

Parámetros

[in] unnamedParam1

hDevice: identificador del dispositivo de visualización (contexto de gráficos).

[in] unnamedParam2

phRenderTargetView: matriz de identificadores para los objetos de vista de destino de representación que se van a establecer. Tenga en cuenta que algunos valores de identificador pueden ser NULL.

[in] NumViews

: el número de elementos de la matriz que phRenderTargetView especifica.

[in] ClearSlots

Número de ranuras de destino de representación después del número de ranuras que NumViews especifica que se va a establecer en NULL. Este número representa la diferencia entre el número anterior de objetos de vista de destino de representación (es decir, cuando el tiempo de ejecución de Microsoft Direct3D anteriormente denominado SetRenderTargets) y el nuevo número de objetos de vista de destino de representación.

Tenga en cuenta que el número que Especifica ClearTargets es solo una ayuda de optimización porque el controlador de pantalla en modo de usuario podría calcular este número.

[in] unnamedParam5

hDepthStencilView: identificador de la vista de galería de símbolos de profundidad.

Valor devuelto

None

Observaciones

El controlador puede usar la función de devolución de llamada pfnSetErrorCb para establecer un código de error.

El controlador de pantalla en modo de usuario debe establecer todas las superficies de destino de representación y el búfer de galería de símbolos de profundidad de forma atómica como una operación.

Aunque el parámetro NumViews especifica el número de identificadores de la matriz que especifica el parámetro phRenderTargetView , algunos valores de identificador de la matriz pueden ser NULL.

El intervalo de superficies de destino de representación entre el número que especifica NumViews y el número máximo de superficies de destino de representación permitidas es necesario que contengan todos los valores NULL o sin enlazar. El número que especifica el parámetro ClearTargets informa al controlador sobre cuántos puntos de enlace debe borrar el controlador para la operación atómica actual.

Si la llamada anterior a SetRenderTargets pasó un valor de 2 en el parámetro NumViews y la llamada actual a SetRenderTargets pasa un valor de 4 en NumViews, la llamada actual a SetRenderTargets también pasa un valor de 0 en el parámetro ClearTargets . Si la siguiente llamada sucesiva a SetRenderTargets pasa un valor de 1 en NumViews, la llamada sucesiva también pasa un valor de 3 (4 - 1) en ClearTargets.

Cuando se solicita el valor de destinos claros durante las operaciones de consulta en modo de usuario, el valor es la diferencia entre el número máximo de superficies de destino de representación y el valor de los destinos de representación.

El controlador no debe encontrar ningún error, excepto por D3DDDIERR_DEVICEREMOVED. Por lo tanto, si el controlador pasa algún error, excepto por D3DDDIERR_DEVICEREMOVED, en una llamada a la función pfnSetErrorCb , el tiempo de ejecución de Microsoft Direct3D determinará que el error es crítico. Incluso si se quitó el dispositivo, no es necesario que el controlador devuelva D3DDDIERR_DEVICEREMOVED; Sin embargo, si la eliminación del dispositivo interfirió con el funcionamiento de SetRenderTargets (que normalmente no debería ocurrir), el controlador puede devolver D3DDDIERR_DEVICEREMOVED.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Escritorio
Encabezado d3d10umddi.h (incluya D3d10umddi.h)

Consulte también

D3D10DDI_DEVICEFUNCS

pfnSetErrorCb