Compartilhar via


PFND3D10DDI_SETRENDERTARGETS função de retorno de chamada (d3d10umddi.h)

A função de retorno de chamada SetRenderTargets define superfícies de destino de renderização.

Sintaxe

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: um identificador para o dispositivo de exibição (contexto gráfico).

[in] unnamedParam2

phRenderTargetView: uma matriz de identificadores para os objetos de exibição de destino de renderização a serem definidos. Observe que alguns valores de identificador podem ser NULL.

[in] NumViews

: o número de elementos na matriz que phRenderTargetView especifica.

[in] ClearSlots

O número de slots de destino de renderização após o número de slots especificados por NumViews a serem definidos como NULL. Esse número representa a diferença entre o número anterior de objetos de exibição de destino de renderização (ou seja, quando o runtime do Microsoft Direct3D anteriormente chamado SetRenderTargets) e o novo número de objetos de exibição de destino de renderização.

Observe que o número especificado pelo ClearTargets é apenas um auxílio de otimização porque o driver de exibição do modo de usuário pode calcular esse número.

[in] unnamedParam5

hDepthStencilView: manipule para a exibição do estêncil de profundidade.

Retornar valor

Nenhum

Comentários

O driver pode usar a função de retorno de chamada pfnSetErrorCb para definir um código de erro.

O driver de exibição do modo de usuário deve definir todas as superfícies de destino de renderização e o buffer de estêncil de profundidade atomicamente como uma operação.

Embora o parâmetro NumViews especifique o número de identificadores na matriz especificada pelo parâmetro phRenderTargetView , alguns valores de identificador na matriz podem ser NULL.

O intervalo de superfícies de destino de renderização entre o número especificado por NumViews e o número máximo de superfícies de destino de renderização permitidas é necessário para conter todos os valores NULL ou não associados. O número especificado pelo parâmetro ClearTargets informa ao driver quantos pontos de associação o driver deve limpar para a operação atômica atual.

Se a chamada anterior para SetRenderTargets passou um valor de 2 no parâmetro NumViews e a chamada atual para SetRenderTargets passar um valor de 4 em NumViews, a chamada atual para SetRenderTargets também passará um valor de 0 no parâmetro ClearTargets . Se a próxima chamada sucessiva para SetRenderTargets passar um valor de 1 em NumViews, a chamada sucessiva também passará um valor de 3 (4 - 1) em ClearTargets.

Quando o valor de destinos claros é solicitado durante operações de consulta no modo de usuário, o valor é a diferença entre o número máximo de superfícies de destino de renderização e o valor de destinos de renderização.

O driver não deve encontrar nenhum erro, exceto para D3DDDIERR_DEVICEREMOVED. Portanto, se o driver passar qualquer erro, exceto por D3DDDIERR_DEVICEREMOVED, em uma chamada para a função pfnSetErrorCb , o runtime do Microsoft Direct3D determinará que o erro é crítico. Mesmo que o dispositivo tenha sido removido, o driver não precisará retornar D3DDDIERR_DEVICEREMOVED; no entanto, se a remoção do dispositivo interferiu na operação de SetRenderTargets (o que normalmente não deve acontecer), o driver poderá retornar D3DDDIERR_DEVICEREMOVED.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho d3d10umddi.h (inclua D3d10umddi.h)

Confira também

D3D10DDI_DEVICEFUNCS

pfnSetErrorCb