структура 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 si. Драйвер должен реализовать обратный вызов, на который указывает этот член.
ContextDestroyAll
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий.
SceneCapture
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий. Для DirectX 6.0 это был указатель на предоставленный драйвером D3dSceneCapture обратном вызове. Для DirectX 7.0 и более поздних версий этот обратный вызов был заменен обработкой состояния D3DRENDERSTATE_SCENECAPTURE отрисовки в функции D3dDrawPrimitives2.
lpReserved10
Должно быть равно нулю.
lpReserved11
Должно быть равно нулю.
RenderState
Указывает на обратный вызов, предоставленный драйвером D3DHAL_RENDERSTATEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот член.
RenderPrimitive
Указывает на обратный вызов, предоставленный драйвером D3DHAL_RENDERPRIMITIVEDATA. Драйвер должен реализовать обратный вызов, на который указывает этот член.
dwReserved
Задает зарезервированные поля и должен иметь значение нулю.
TextureCreate
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий. Для DirectX 6.0 это был указатель на предоставленный драйвером обратного вызова D3dTextureCreate или NULL.
TextureDestroy
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий. Для DirectX 6.0 это был указатель на предоставленный драйвером обратном вызове D3dTextureDesi или NULL.
TextureSwap
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий. Для DirectX 6.0 это был указатель на предоставленный драйвером обратном вызове D3dTextureSwap или NULL.
TextureGetSurf
Необходимо задать значение NULL в драйвере Windows 2000 и более поздних версий. Для 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 (include D3dhal.h) |
См. также
D3dContextDetextDetextDe textDe