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 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:

Comentarios

D3dContextCreate debe implementarse en controladores que admitan 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 la asociación del destino de representación y el búfer de profundidad a los miembros lpDDSLcl y lpDDSZLcl de la estructura de D3DHAL_CONTEXTCREATEDATA en el punto pccd , respectivamente, con el contexto.
  • Generar un identificador de contexto único para este nuevo contexto y devolverlo en el miembro dwhContext 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 miembro ddrval de D3DHAL_CONTEXTCREATEDATA en DD_OK tras é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 miembro lpDDLcl de D3DHAL_CONTEXTCREATEDATA. Si el controlador requiere posteriormente cualquier información a la que se accede a través de este puntero de 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. Cualquier llamada posterior a D3dDrawPrimitives2 cambia este estado.

El controlador debe poder hacer referencia a todos los identificadores de textura que se crean dentro de un contexto. Después, 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 .

Se puede llamar a D3dContextCreate con un PDEV deshabilitado. Un PDEV está deshabilitado o habilitado llamando a la función DrvAssertMode del controlador de pantalla. Consulte Administración de PDEV para obtener más información.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado d3dhal.h (incluya D3dhal.h)

Consulte también

D3DHAL_CONTEXTCREATEDATA

D3dContextDestroy

D3dDrawPrimitives2

DD_DIRECTDRAW_LOCAL