D3DDDIDEVINFO_VCACHE 结构 (d3dumddi.h)

D3DDDIDEVINFO_VCACHE结构描述设备的顶点缓存信息。

语法

typedef struct _D3DDDIDEVINFO_VCACHE {
  [out] UINT Pattern;
  [out] UINT OptMethod;
  [out] UINT CacheSize;
  [out] UINT MagicNumber;
} D3DDDIDEVINFO_VCACHE;

成员

[out] Pattern

位模式。 驱动程序必须将位模式指定为 CACH 四字符代码, (FOURCC) 值。 驱动程序可以使用以下 MAKEFOURCC 宏将 FOURCC 值指定为 CACH:

MAKEFOURCC('C', 'A', 'C', 'H');

[out] OptMethod

网格优化的方法。 驱动程序可以使用以下值之一来指定它使用的网格优化。

含义
D3DXMESHOPT_STRIPREORDER (0) 最长条带优化
D3DXMESHOPT_VCACHE (1) 基于顶点缓存的优化

[out] CacheSize

驱动程序优化顶点缓存的有效大小(以条目为单位)。 实际缓存大小不需要是 CacheSize 中指定的大小,因为在大多数情况下实际缓存大小较大。 仅当驱动程序还在 OptMethod 成员中指定D3DXMESHOPT_VCACHE时,才在 CacheSize 中指定优化的大小。

[out] MagicNumber

确定何时重新启动带区列表时,应用作试错过程的一部分的数字。 此数字可以是 1 到 CacheSize 成员中指定的值。 通常,最佳值接近 CacheSize/2。 仅当驱动程序还在 OptMethod 成员中指定D3DXMESHOPT_VCACHE时,才在 MagicNumber 中指定数字。

注解

Direct3D 运行时版本 9.0 及更高版本。 Microsoft Direct3D 运行时调用驱动程序的 CreateQuery 函数,为顶点缓存查询创建驱动程序端资源。 在此 CreateQuery 调用中,运行时在 D3DDDIARG_CREATEQUERY 结构的 QueryType 成员中指定 D3DDDIQUERYTYPE_VCACHE查询 类型。 驱动程序应分配D3DDDIDEVINFO_VCACHE结构。 然后,运行时调用驱动程序的 IssueQuery 函数来处理顶点缓存查询。 驱动程序应 (GPU) 指令插入图形处理单元,以便将顶点缓存数据写入分配。 若要从驱动程序检索顶点缓存信息,运行时会调用驱动程序的 GetQueryData 函数。 在此 GetQueryData 调用中,驱动程序应锁定分配并返回 pData 参数指向 的 D3DDDIARG_GETQUERYDATA 结构的 pData 成员处的顶点缓存数据。

仅 Direct3D 运行时版本 8.1。 Direct3D 运行时调用驱动程序的 GetInfo 函数,以从驱动程序获取顶点缓存信息。 在此 GetInfo 调用中,运行时在 DevInfoID 参数中传递 D3DDDIDEVINFOID_VCACHE 标志。 驱动程序在D3DDDIDEVINFO_VCACHE结构中指定顶点缓存信息,并在 pDevInfoStruct 参数处返回此信息。

要求

要求
最低受支持的客户端 在 Windows Vista 和更高版本的 Windows 操作系统中可用。
标头 d3dumddi.h (包括 D3dumddi.h)

另请参阅

CreateQuery

D3DDDIARG_CREATEQUERY

D3DDDIARG_GETQUERYDATA

GetInfo

GetQueryData

IssueQuery