DirectX 版本通知

DirectX 8.0 及更高版本驱动程序始终会收到有关应用程序在D3DGDI2_TYPE_DXVERSION请求中使用 DirectX 运行时版本的通知,以便他们可以报告版本的设备功能。 此外,由于应用程序请求在具有各种像素格式的图面上执行操作,DirectX 9.0 及更高版本驱动程序也会收到有关应用程序在D3DGDI2_TYPE_GETFORMATCOUNT和D3DGDI2_TYPE_GETFORMAT查询中支持的 DirectX 运行时版本的通知,以便这些驱动程序可以适当地处理版本的操作。

例如,对于 8.0 版 DirectX 运行时,DirectX 9.0 或更高版本的驱动程序可以使用D3DMULTISAMPLE_TYPE枚举类型的元素设置多采样图面的样本数,而不考虑驱动程序是否支持可掩码多重采样。 但是,对于 9.0 版 DirectX 运行时,DirectX 9.0 或更高版本的驱动程序不得在DDSCAPS3_MULTISAMPLE_MASK掩码中设置D3DMULTISAMPLE_TYPE位,除非驱动程序支持可掩码位。 有关D3DMULTISAMPLE_TYPE的详细信息,请参阅 DirectX SDK 文档。

在D3DGDI2_TYPE_GETFORMATCOUNT查询中,DirectX 9.0 驱动程序会收到DD_GETFORMATCOUNTDATA结构的 dwReserved 成员中的运行时版本的通知。 dwReserved 成员设置为 DD_RUNTIME_VERSION,这是 DirectX 9.0 0x00000900。

在D3DGDI2_TYPE_GETFORMAT查询中,DirectX 9.0 驱动程序会收到在 DD_GETFORMATDATA 结构的 format 成员中指定的 DDPIXELFORMAT 结构的 dwSize 成员中的运行时版本的通知。 dwSize 成员也设置为 DD_RUNTIME_VERSION。