Compartilhar via


PFND3DDDI_SETDISPLAYMODE função de retorno de chamada (d3dumddi.h)

A função SetDisplayMode alterna para um modo de exibição ou primário sem suporte da área de trabalho GDI.

Sintaxe

PFND3DDDI_SETDISPLAYMODE Pfnd3dddiSetdisplaymode;

HRESULT Pfnd3dddiSetdisplaymode(
  HANDLE hDevice,
  const D3DDDIARG_SETDISPLAYMODE *unnamedParam2
)
{...}

Parâmetros

hDevice

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

unnamedParam2

pData [in]

Um ponteiro para uma estrutura de D3DDDIARG_SETDISPLAYMODE que especifica parâmetros para definir o modo de exibição.

Valor de retorno

SetDisplayMode retornará S_OK ou um resultado de erro apropriado se o modo de exibição não for definido com êxito.

Observações

O runtime do Microsoft Direct3D chama SetDisplayMode para alternar para um modo de exibição ou primário que não é compatível com a área de trabalho GDI. A lista a seguir descreve exemplos dessas primárias:

  • Primárias criadas com formatos de destino de 10 bits por canal (10:10:10:2) exibem e renderizam formatos de destino (por exemplo, D3DFMT_A2R10G10B10)
  • Primárias com vários exemplos em que a amostragem múltipla é executada durante a verificação
  • Primárias persistentes que são usadas por aplicativos Microsoft DirectX versão 9.L de tela inteira
O runtime do Direct3D chama a função createResource do driver de exibição do modo de usuário para criar o primário a ser verificado. No entanto, o driver deve programar o hardware para verificar somente quando sua função SetDisplayMode for chamada. Portanto, o runtime define os hResource e subResourceIndex membros da estrutura D3DDDIARG_SETDISPLAYMODE que é apontado pelo parâmetro pData para o primário que foi criado por meio da chamada para a função CreateResource do driver. Em seguida, o driver deve converter o primário representado por hResource e SubResourceIndex para um identificador de alocação primário. Depois que o driver fizer essa tradução, o driver deverá passar o identificador resultante em uma chamada para a função pfnSetDisplayModeCb do, que inicia uma chamada para a função DxgkDdiCommitVidPn do driver de miniport de exibição.

O driver de exibição do modo de usuário pode definir o hPrimaryAllocation membro da estrutura D3DDDICB_SETDISPLAYMODE na chamada para pfnSetDisplayModeCb para verificar qualquer alocação. No entanto, a alocação deve ser marcada como primária (ou seja, o driver de exibição do modo de usuário deve ter definido o sinalizador de campo de bits primário no Flags membro da estrutura D3DDDI_ALLOCATIONINFO em uma chamada para a função pfnAllocateCb para criar a alocação).

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
da Plataforma de Destino Área de trabalho
cabeçalho d3dumddi.h (inclua D3dumddi.h)

Consulte também

D3DDDIARG_SETDISPLAYMODE

D3DDDI_DEVICEFUNCS

pfnSetDisplayModeCb