PFND3DDDI_GETCAPS回调函数 (d3dumddi.h)

D3D 运行时调用驱动程序的 PFND3DDDI_GETCAPS 回调函数来查询图形适配器的功能。

语法

PFND3DDDI_GETCAPS Pfnd3dddiGetcaps;

HRESULT Pfnd3dddiGetcaps(
  HANDLE hAdapter,
  const D3DDDIARG_GETCAPS *unnamedParam2
)
{...}

参数

hAdapter

标识图形适配器的句柄。

unnamedParam2

pData [in, out]

指向描述要检索的功能的 D3DDDIARG_GETCAPS 结构的指针。

返回值

PFND3DDDI_GETCAPS 返回以下值之一:

返回代码 描述
S_OK 已成功检索这些功能。
E_OUTOFMEMORY PFND3DDDI_GETCAPS无法为其分配所需的内存来完成。

言论

D3DDDIARG_GETCAPS 结构的 pData 成员中返回的数据取决于请求的数据类型(即数据取决于 D3DDDIARG_GETCAPS。键入,有时在 pInfo 成员上)。

下表提供了两个示例,说明如何根据 D3DDDIARG_GETCAPS 的值设置 PFND3DDDI_GETCAPS 调用。键入

D3DDDIARG_GETCAPS成员 示例 1 示例 2
类型 D3DDDICAPS_DDRAW D3DDDICAPS_GETFORMATCOUNT
pInfo [in]NULL (未设置任何条件) [in]NULL (未设置任何条件)
pData [out] DDRAW_CAPS (唯一指针) [out]UINT* (唯一指针)
DataSize sizeof(DDRAW_CAPS) sizeof(UINT)
笔记 驱动程序必须使用它支持的 DirectDraw 功能填充 DDRAW_CAPS 结构。 驱动程序必须使用表示设备支持的 D3DDDIFORMAT 图面格式数的 UINT 值填充 pData 指向的缓冲区。

有关 D3DDDIARG_GETCAPS 的其他值的说明,请参阅 D3DDDIARG_GETCAPS。用于多平面覆盖的类型

Simple_instancing

如果支持 Windows 显示驱动程序模型 (WDDM) 1.3 及更高版本的 Direct3D 级别 9 驱动程序完成对 PFND3DDDI_GETCAPS 的调用,并返回S_OK但不会更改 D3DDDIARG_GETCAPS 结构中的数据,则它向 Direct3D 运行时表明硬件和驱动程序不支持简单的实例化。 有关详细信息,请参阅 D3DDDICAPS_SIMPLE_INSTANCING_SUPPORT

要求

要求 价值
最低支持的客户端 Windows Vista
目标平台 桌面
标头 d3dumddi.h (包括 D3dumddi.h)

另请参阅

D3DDDIARG_GETCAPS

D3DDDICAPS_SIMPLE_INSTANCING_SUPPORT

D3DDDIFORMAT

D3DDDI_ADAPTERFUNCS

DDRAW_CAPS