Compartilhar via


LPD3DHAL_CONTEXTCREATECB função de retorno de chamada (d3dhal.h)

A função D3dContextCreate cria um contexto.

Sintaxe

LPD3DHAL_CONTEXTCREATECB Lpd3dhalContextcreatecb;

DWORD Lpd3dhalContextcreatecb(
  LPD3DHAL_CONTEXTCREATEDATA unnamedParam1
)
{...}

Parâmetros

unnamedParam1

pccd [in]

Aponta para uma estrutura de D3DHAL_CONTEXTCREATEDATA que contém as informações necessárias para criar um contexto e os dados que o driver deve armazenar no novo contexto.

Valor de retorno

D3dContextCreate retorna um dos seguintes códigos de retorno de chamada:

Observações

D3dContextCreate deve ser implementado em drivers que dão suporte ao Microsoft Direct3D. Ele deve executar as seguintes etapas:

  • Inicialize o contexto do driver com todas as informações exigidas pelo driver para executar a renderização. Isso inclui associar o destino de renderização e o buffer de profundidade que o lpDDSLcl e lpDDSZLcl membros da estrutura D3DHAL_CONTEXTCREATEDATA em pccd ponto para, respectivamente, com o contexto.
  • Gere uma ID de contexto exclusiva para esse novo contexto e retorne-a no dwhContext membro do D3DHAL_CONTEXTCREATEDATA. O Direct3D usa essa ID de contexto em cada retorno de chamada subsequente que ele faz para este dispositivo Direct3D. O driver nunca deve criar um identificador de contexto zero.
  • Defina o ddrval membro do D3DHAL_CONTEXTCREATEDATA para DD_OK após o sucesso e D3DHAL_OUTOFCONTEXTS se ele não puder criar o contexto.
  • Retornar DDHAL_DRIVER_HANDLED.
D3dContextCreate não deve armazenar em cache o ponteiro para a estrutura de DD_DIRECTDRAW_LOCAL que foi passada como membro lpDDLcl de D3DHAL_CONTEXTCREATEDATA. Se o driver exigir posteriormente qualquer informação acessada por meio desse ponteiro DD_DIRECTDRAW_LOCAL, o driver deverá armazenar as informações na estrutura de dados de contexto privado do driver.

O estado não é compartilhado entre contextos; portanto, o driver deve manter informações de estado completas para cada contexto. Esse estado é alterado por todas as chamadas subsequentes para D3dDrawPrimitives2.

O driver deve ser capaz de referenciar todas as alças de textura criadas em um contexto. Em seguida, o driver pode limpar todos os dados específicos do driver relacionados às texturas criadas nesse contexto quando uma chamada D3dContextDestroy for feita.

D3dContextCreate pode ser chamado com um PDEVdesabilitado. Um PDEV está desabilitado ou habilitado chamando a função drvAssertMode do driver de exibição. Consulte Gerenciamento de PDEVs para obter mais informações.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho d3dhal.h (inclua D3dhal.h)

Consulte também

D3DHAL_CONTEXTCREATEDATA

D3dContextDestroy

D3dDrawPrimitives2

DD_DIRECTDRAW_LOCAL