Directx 如何查询Direct3D9的视频内存总量?

Directx 如何查询Direct3D9的视频内存总量?,directx,direct3d,directx-9,direct3d9,Directx,Direct3d,Directx 9,Direct3d9,很抱歉,如果这是一个明显的问题,但我只是在网上找不到任何东西 在Direct3D9中,如何获取特定显示设备的视频内存总量?我正在寻找运行dxdiag并在那里查找的编程等效程序。(我不关心可用内存;只关心视频卡有多少MB。) 了解用户视频卡的内存大小将是崩溃报告中的有用信息。在Windows Vista、Windows 7、Windows 8.x和Windows 10上,使用DXGI。详细信息在DXGI\u ADAPTER\u DESC结构中:专用视频内存,专用系统内存,共享系统内存 如果您的目标

很抱歉,如果这是一个明显的问题,但我只是在网上找不到任何东西

在Direct3D9中,如何获取特定显示设备的视频内存总量?我正在寻找运行dxdiag并在那里查找的编程等效程序。(我不关心可用内存;只关心视频卡有多少MB。)


了解用户视频卡的内存大小将是崩溃报告中的有用信息。

在Windows Vista、Windows 7、Windows 8.x和Windows 10上,使用DXGI。详细信息在
DXGI\u ADAPTER\u DESC
结构中:
专用视频内存
专用系统内存
共享系统内存

如果您的目标是这些操作系统,则可能应该使用Direct3D 11,而不是传统的Direct3D 9


参见中的示例。

是否可以将DXGI和DirectX9混合使用?在我的特殊情况下,在DX11中重写我的数千行DX9代码是不可能的。然后继续使用DirectX 9,但要意识到在现代版本的操作系统上调试更困难,你必须咬紧牙关,在某个时候重写它。是的,您可以在Windows Vista或更高版本中将DXGI与Direct3D 9一起用于枚举等,但您必须使用传统API来实际创建Direct3D 9设备。