NtGdiD3DDrawPrimitives2 函数

[此函数可能会随每个操作系统修订而更改。 请改用 Microsoft DirectDraw 和 Microsoft Direct3DAPIs;这些 API 使应用程序不受此类操作系统更改影响,并隐藏了与显示驱动程序直接交互所涉及的许多其他困难。]

呈现基元并返回更新的呈现状态。

语法

DWORD APIENTRY NtGdiD3DDrawPrimitives2(
  _In_    HANDLE                         hCmdBuf,
  _In_    HANDLE                         hVBuf,
  _Inout_ LPD3DNTHAL_DRAWPRIMITIVES2DATA pded,
  _Inout_ FLATPTR                        *pfpVidMemCmd,
  _Inout_ DWORD                          *pdwSizeCmd,
  _Inout_ FLATPTR                        *pfpVidMemVtx,
  _Inout_ DWORD                          *pdwSizeVtx
);

参数

hCmdBuf [in]

标识包含命令数据的 DirectDraw 图面 的DD_SURFACE_LOCAL 结构的句柄。

hVBuf [in]

标识包含顶点数据的 DirectDraw 图面的 DD_SURFACE_LOCAL 结构的句柄。

pded [in, out]

指向 D3DNTHAL_DRAWPRIMITIVES2DATA 结构的指针,该结构包含驱动程序呈现一个或多个基元所需的信息。

pfpVidMemCmd [in, out]

如果驱动程序交换了命令缓冲区,则为指向视频内存的新指针。

pdwSizeCmd [in, out]

指定驱动程序必须增加交换命令缓冲区的最小字节数。

pfpVidMemVtx [in, out]

如果驱动程序交换了顶点缓冲区,则为指向视频内存的新指针。

pdwSizeVtx [in, out]

指定驱动程序必须为交换顶点缓冲区分配的最小字节数。

返回值

NtGdiD3DrawPrimitives2 返回以下回调代码之一。

返回代码 说明
DDHAL_DRIVER_HANDLED
驱动程序已执行该操作并返回该操作的有效返回代码。 如果此代码DD_OK,则 DirectDraw 或 Direct3D 将继续执行 函数。 否则,DirectDraw 或 Direct3D 将返回驱动程序提供的错误代码并中止函数。
DDHAL_DRIVER_NOTHANDLED
驱动程序对请求的操作没有注释。 如果需要驱动程序实现特定的回调,DirectDraw 或 Direct3D 会报告错误条件。 否则,DirectDraw 或 Direct3D 处理操作,就像未通过执行 DirectDraw 或 Direct3D 设备无关实现来定义驱动程序回调一样。

 

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Ntgdi.h

另请参阅

图形低级别客户端支持