структура D3DHAL_CALLBACKS (d3dhal.h)
D3DHAL_CALLBACKS является одной из нескольких структур обратного вызова, описывающих поддержку Direct3D, предоставляемую драйвером.
Синтаксис
typedef struct _D3DHAL_CALLBACKS {
DWORD dwSize;
LPD3DHAL_CONTEXTCREATECB ContextCreate;
LPD3DHAL_CONTEXTDESTROYCB ContextDestroy;
LPD3DHAL_CONTEXTDESTROYALLCB ContextDestroyAll;
LPD3DHAL_SCENECAPTURECB SceneCapture;
LPVOID lpReserved10;
LPVOID lpReserved11;
LPD3DHAL_RENDERSTATECB RenderState;
LPD3DHAL_RENDERPRIMITIVECB RenderPrimitive;
DWORD dwReserved;
LPD3DHAL_TEXTURECREATECB TextureCreate;
LPD3DHAL_TEXTUREDESTROYCB TextureDestroy;
LPD3DHAL_TEXTURESWAPCB TextureSwap;
LPD3DHAL_TEXTUREGETSURFCB TextureGetSurf;
LPVOID lpReserved12;
LPVOID lpReserved13;
LPVOID lpReserved14;
LPVOID lpReserved15;
LPVOID lpReserved16;
LPVOID lpReserved17;
LPVOID lpReserved18;
LPVOID lpReserved19;
LPVOID lpReserved20;
LPVOID lpReserved21;
LPD3DHAL_GETSTATECB GetState;
DWORD dwReserved0;
DWORD dwReserved1;
DWORD dwReserved2;
DWORD dwReserved3;
DWORD dwReserved4;
DWORD dwReserved5;
DWORD dwReserved6;
DWORD dwReserved7;
DWORD dwReserved8;
DWORD dwReserved9;
} D3DHAL_CALLBACKS, *LPD3DHAL_CALLBACKS;
Члены
dwSize
Задает размер структуры D3DHAL_CALLBACKS в байтах.
ContextCreate
Указывает на предоставленный драйвером обратный вызов D3dContextCreate . Драйвер должен реализовать обратный вызов, на который указывает этот элемент.
ContextDestroy
Указывает на предоставленный драйвером обратный вызов D3dContextDeкислоу. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.
ContextDestroyAll
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL .
SceneCapture
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dSceneCapture . Для DirectX 7.0 и более поздних версий этот обратный вызов был заменен обработкой состояния D3DRENDERSTATE_SCENECAPTURE отрисовки в функции D3dDrawPrimitives2 .
lpReserved10
Должен равняться нулю.
lpReserved11
Должен равняться нулю.
RenderState
Указывает на предоставленный драйвером обратный вызов D3DHAL_RENDERSTATEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.
RenderPrimitive
Указывает на предоставленный драйвером обратный вызов D3DHAL_RENDERPRIMITIVEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.
dwReserved
Указывает зарезервированные поля и должны иметь нулевое значение.
TextureCreate
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером D3dTextureCreate обратный вызов или NULL.
TextureDestroy
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureDeкистрое или NULL.
TextureSwap
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureSwap или NULL.
TextureGetSurf
В драйвере Windows 2000 и более поздних версий должно быть задано значение NULL . Для DirectX 6.0 это был указатель на предоставленный драйвером обратный вызов D3dTextureGetSurf или NULL.
lpReserved12
Должен равняться нулю.
lpReserved13
Должен равняться нулю.
lpReserved14
Должен равняться нулю.
lpReserved15
Должен равняться нулю.
lpReserved16
Должен равняться нулю.
lpReserved17
Должен равняться нулю.
lpReserved18
Должен равняться нулю.
lpReserved19
Должен равняться нулю.
lpReserved20
Должен равняться нулю.
lpReserved21
Должен равняться нулю.
GetState
Указывает на предоставленный драйвером обратный вызов D3DHAL_GETSTATEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот элемент.
dwReserved0
Должен равняться нулю.
dwReserved1
Должен равняться нулю.
dwReserved2
Должен равняться нулю.
dwReserved3
Должен равняться нулю.
dwReserved4
Должен равняться нулю.
dwReserved5
Должен равняться нулю.
dwReserved6
Должен равняться нулю.
dwReserved7
Должен равняться нулю.
dwReserved8
Должно быть равно нулю
dwReserved9
Должен равняться нулю.
Комментарии
Драйвер выделяет эту структуру и задает соответствующие значения во всех членах. Функция DrvGetDirectDrawInfo драйвера возвращает указатель на эту структуру в элементе lpD3DHALCallbacksструктуры DD_HALINFO .
Управление текстурами теперь осуществляется с помощью операционных кодов, которые управляются в реализации драйвера D3dDrawPrimitives2.
Требования
Требование | Значение |
---|---|
Заголовок | d3dhal.h (включая D3dhal.h) |