Compartir a través de


LPD3DHAL_CONTEXTCREATECB función de devolución de llamada (d3dhal.h)

La función D3dContextCreate crea un contexto.

Sintaxis

LPD3DHAL_CONTEXTCREATECB Lpd3dhalContextcreatecb;

DWORD Lpd3dhalContextcreatecb(
  LPD3DHAL_CONTEXTCREATEDATA unnamedParam1
)
{...}

Parámetros

unnamedParam1

pccd [in]

Apunta a una estructura de D3DHAL_CONTEXTCREATEDATA que contiene la información necesaria para crear un contexto y los datos que el controlador debe almacenar en el nuevo contexto.

Valor devuelto

D3dContextCreate devuelve uno de los siguientes códigos de devolución de llamada:

Observaciones

D3dContextCreate debe implementarse en los controladores que admiten Microsoft Direct3D. Debe realizar los pasos siguientes:

  • Inicialice el contexto del controlador con toda la información requerida por el controlador para realizar la representación. Esto incluye asociar el destino de representación y el búfer de profundidad a los que lpDDSLcl y lpDDSZLcl miembros de la estructura de D3DHAL_CONTEXTCREATEDATA en punto de pccd, respectivamente, con el contexto.
  • Generar un identificador de contexto único para este nuevo contexto y devolverlo en el dwhContext miembro de D3DHAL_CONTEXTCREATEDATA. Direct3D usa este identificador de contexto en cada devolución de llamada posterior que realiza en este dispositivo Direct3D. El controlador nunca debe crear un identificador de contexto de cero.
  • Establezca el ddrval miembro de D3DHAL_CONTEXTCREATEDATA en DD_OK tras el éxito y en D3DHAL_OUTOFCONTEXTS si no puede crear el contexto.
  • Devuelve DDHAL_DRIVER_HANDLED.
D3dContextCreate no debe almacenar en caché el puntero a la estructura de DD_DIRECTDRAW_LOCAL que se pasó como el miembro lpDDLcl de D3DHAL_CONTEXTCREATEDATA. Si el controlador requiere posteriormente cualquier información a la que se accede a través de este puntero DD_DIRECTDRAW_LOCAL, el controlador debe almacenar la información en la estructura de datos de contexto privado del controlador.

El estado no se comparte entre contextos; por lo tanto, el controlador debe mantener información de estado completa para cada contexto. Este estado se cambia mediante las llamadas posteriores a D3dDrawPrimitives2.

El controlador debe poder hacer referencia a todos los identificadores de textura que se crean dentro de un contexto. A continuación, el controlador puede limpiar todos los datos específicos del controlador relacionados con las texturas creadas en este contexto cuando se realiza una llamada D3dContextDestroy.

D3dContextCreate se puede llamar a con un PDEV dedeshabilitado. Un PDEV está deshabilitado o habilitado llamando a la función de drvAssertMode del controlador de pantalla. Consulte administración de PDEVs para obtener más información.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de d3dhal.h (incluya D3dhal.h)

Consulte también

D3DHAL_CONTEXTCREATEDATA

D3dContextDestroy

D3dDrawPrimitives2

DD_DIRECTDRAW_LOCAL