Compartilhar via


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

Chamado pelo DWM (Gerenciador de Janelas da Área de Trabalho) para verificar se o driver de modo de usuário dá suporte a operações de Inversão Direta, nas quais a memória de vídeo é invertida perfeitamente entre as alocações primárias gerenciadas de um aplicativo e as alocações primárias gerenciadas do DWM.

Sintaxe

PFND3D11_1DDI_CHECKDIRECTFLIPSUPPORT Pfnd3d111DdiCheckdirectflipsupport;

void Pfnd3d111DdiCheckdirectflipsupport(
        D3D10DDI_HDEVICE unnamedParam1,
        D3D10DDI_HRESOURCE unnamedParam2,
        D3D10DDI_HRESOURCE unnamedParam3,
        UINT CheckDirectFlipFlags,
  [out] BOOL *pSupported
)
{...}

Parâmetros

unnamedParam1

hDevice [in]

Um identificador para o dispositivo de exibição (contexto gráfico).

unnamedParam2

hResource1

Um recurso na cadeia de troca do aplicativo.

unnamedParam3

hResource2

Um recurso na cadeia de troca do DWM.

CheckDirectFlipFlags

Se esse parâmetro tiver um valor de D3D11_1DDI_CHECK_DIRECT_FLIP_IMMEDIATE, a inversão contínua deverá ocorrer imediatamente e não precisará ser sincronizada com uma interrupção VSync.

[out] pSupported

Defina como TRUE se o driver puder inverter perfeitamente a memória de vídeo entre as alocações primárias gerenciadas de um aplicativo e as alocações primárias gerenciadas do DWM. Caso contrário, defina como FALSE.

Retornar valor

Nenhum

Comentários

Essa função é chamada pelo menos uma vez antes que o DWM tente apresentar a uma cadeia de troca do Direct Flip. Ele também é chamado depois que cada alteração de modo ocorre ou depois que o DWM recria sua própria cadeia de troca por qualquer motivo.

O driver de modo de usuário deve garantir que as alocações primárias gerenciadas do aplicativo e do DWM tenham os seguintes recursos compatíveis:

  • Recursos estéreo.
  • Vários formatos MSAA (Anti aliasing de exemplo).
  • Formatos de swizzle. Se o swizzle só puder ser alterado em cada intervalo VSync, verifique se o parâmetro CheckDirectFlipFlags não tem um valor de D3D11_1DDI_CHECK_DIRECT_FLIP_IMMEDIATE.
  • Ambas as alocações primárias gerenciadas devem ser criadas usando o mesmo valor VidPnSourceId na estrutura D3DDDI_ALLOCATIONINFO .
  • As configurações do adaptador de exibição estão vinculadas.
O driver de modo de usuário pode precisar chamar o driver do modo kernel para executar essas validações. Para fazer isso, chame a função de retorno de chamada pfnEscapeCb e, em seguida, chame a função DxgkCbGetHandleData para acessar os dados de alocação de recursos do driver do modo kernel.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Servidor mínimo com suporte Windows Server 2012
Plataforma de Destino Área de Trabalho
Cabeçalho d3d10umddi.h (inclua D3d10umddi.h)

Confira também

D3D11_1_DDI_CHECK_DIRECT_FLIP_FLAGS

D3DDDI_ALLOCATIONINFO

DxgkCbGetHandleData

pfnEscapeCb