LPD3DHAL_CONTEXTCREATECB 回调函数 (d3dhal)
D3dContextCreate函数创建上下文。
语法
LPD3DHAL_CONTEXTCREATECB Lpd3dhalContextcreatecb;
DWORD Lpd3dhalContextcreatecb(
LPD3DHAL_CONTEXTCREATEDATA unnamedParam1
)
{...}
参数
unnamedParam1
pccd [in]
指向一个 D3DHAL_CONTEXTCREATEDATA 结构,该结构包含创建上下文所需的信息以及驱动程序应存储在新上下文中的数据。
返回值
D3dContextCreate 返回以下回调代码之一:
注解
必须在支持 Microsoft Direct3D 的驱动程序中实现D3dContextCreate 。 它应执行以下步骤:
- 使用驱动程序执行呈现所需的所有信息初始化驱动程序的上下文。 这包括将 D3DHAL_CONTEXTCREATEDATA 结构的 lpDDSLcl 和 lpDDSZLcl 成员分别与上下文相关联,并将其与 pccd 点相关联。
- 为此新上下文生成唯一的上下文 ID 并将其返回 D3DHAL_CONTEXTCREATEDATA 的 dwhContext 成员。 Direct3D 在此 Direct3D 设备的每个后续回拨中使用此上下文 ID。 驱动程序绝不能创建零的上下文句柄。
- 将 D3DHAL_CONTEXTCREATEDATA 的 ddrval 成员设置为在成功时 DD_OK,如果不能创建上下文,则为 D3DHAL_OUTOFCONTEXTS。
- 返回 DDHAL_DRIVER_HANDLED。
状态不在上下文之间共享;因此,驱动程序必须为每个上下文维护完整的状态信息。 对 D3dDrawPrimitives2的后续调用会更改此状态。
驱动程序必须能够引用在上下文中创建的所有纹理句柄。 然后,驱动程序可以在进行 D3dContextDestroy 调用时清理与在此上下文中创建的纹理相关的所有特定于驱动程序的数据。
可以使用已禁用的PDEV调用D3dContextCreate 。 PDEV 通过调用显示驱动程序的 DrvAssertMode 函数来禁用或启用。 有关详细信息,请参阅 管理 PDEVs 。
要求
目标平台 | 桌面型 |
标头 | d3dhal (包含 D3dhal) |
请参阅
反馈
提交和查看相关反馈