精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>图形图像及多媒体专题>>MFC D3D设备枚举程序

主题:MFC D3D设备枚举程序
发信人: laical()
整理人: wenbobo(2002-12-24 09:17:15), 站内信件
也不知M$是怎想的,连个设备枚举都搞得如此的复杂,使多少人对DirectX望而却
步啊!
哪个什么设备枚举步骤对于每一个程序来讲其实都没有多大分别的。所以我决定
写一个设备枚举程序出来,免得每次都做重复劳动。但我并不主张写一个什么引
擎的,因为M$写的D3DX或是DirectX RM已经够实用的了。我想不出什么理由要去
写个引擎^_^
对于DirectDraw初始化时要的其实也只有几个参数,你都可以从枚举后的g_d3dD
evices结构中很容易地得到,看看我的源程序你就知到了。

如:你可以这样得到驱动程序的名字g_d3dDevices[m].strDesc
g_d3dDevices[m].bDestopCompatible //等于1则支持窗口模式,否则为0
g_d3dDevices[m].NumModes //第m个设备有多少种显示模式
g_d3dDevices[m].ddsdModes[n].dwHeight //第m个设备的第n种模式的高度分辨

g_d3dDevices[m].ddsdModes[n].dwWidth //第m个设备的第n种模式的宽度分辩率

g_d3dDevices[m].ddsdModes[n].dpfPixeFormat.dwRGBBitCount //第m个设备的
第n种模式的RGB色深度(如:24Bit、
16Bit等)

当然,g_d3dDevices结构中还包含大量的其它有用信息,这可不是一下只都能讲
得清的了,自己查查MSDN吧。程序的大部分代码不是从M$哪里Copy过来的,天下
程序一大抄嘛。^_^
最后是本程序的运行及编译环境了:Visual C++ 6.0 MFC Windows98 DirectX 7
.0
你可以在以下网页得到本例程的源程序:
http://laical.yeah.net

陈伟凡(laical)
e-mail:[email protected]
2000/6/4

--
欢迎光临我的PC游戏开发网站
 http://laical.yeah.net

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.105.26.177]

[关闭][返回]