Direct9入门教程|Direct9官方提供的tutorial文件自己翻译的|DirectX创建设备

这篇博客是Direct9的入门教程,详细介绍了如何创建Windows窗口并初始化Direct3D设备。首先,通过标准的Windows编程方法建立窗口,然后初始化Direct3D对象,设置参数并创建设备。接着,处理系统消息,包括WM_PAINT消息,以实现窗口重绘。最后,展示了如何渲染和显示场景,以及如何在程序结束时清理Direct3D对象。文章提供了完整的源代码供读者参考。
摘要由CSDN通过智能技术生成

 自己翻译的官方帮助文档里面的教程一,因为昨晚自己弄出来觉得很高兴哈。有新手觉得难入手的不妨看下我这篇。

最下面有VC的设置。(我的SDK版本比较老了哈,是9.0April2006)

 

第一步 建立windows窗口
 每一个windows程序做的第一件事就是当它运行时要产生一个程序窗口显示给使用者看。为做到这个,CreateDevice样例是在它的WinMain函数里面开始运行的。下面这个代码演示了窗口的初始化。

 

 这段代码范例是标准windows编程:)。样例通过定义和注册一个叫做“Direct3D Tutorial"的窗口类开始。注册类之后,代码会产生一个使用了注册类的基本的顶级别的窗口,其中窗口区域为300像素宽,300像素高。窗口没有菜单和子窗口。样例还使用了WS_OVERLAPPEDWINDOW窗口类型来创建一个有最小化,最大化,关闭按钮的窗口程序。(如果样例是在全屏模式中运行,推荐使用窗口类型为WS_EX_TOPMOST,这个类型表示了创建的窗口应该在所有的非最高级窗口程序之上,即使窗口不是积极的)当窗口建立后,代码样例将会调用标准Win32函数来显示和更新窗口。
 当程序窗口准备好以后,你可以开始设置必需对象的Direct3D,这将在第二部——初始化Direct3D中提到。


第二步 初始化Direct3D
 CreateDevice样例将在窗口建立后从WinMain中调用在InitD3D程序功能来演示了Direct3D初始化。在你创建程序窗口后,你开始初始化Direct3D对象(你将用这个对象渲染场景)。这个过程包含了产生对象,设置参数,最后创建Direct3D设备。
 创建一个Direct3D对象后,使用CreateDevice方法产生设备,并且枚举设备,类型,模式等等。
if( NULL == ( g_pD3D = Direct3DCreate9( D3D_SDK_VERSION)))
 return E_FAIL;
 唯一传递给Direct3DCreate9的参数总是D3D_SDK_VERSION。这个宏。无论何时小改变导致程序重编译这是指总是不变的。如果版本没有匹配,Direct3DCreate9就会调用失败。
 你可以通过填充D3DPRESENT PARAMETERS来看看3D程序的效果。CreateDevice样例设置Windowed为TRUE, SwapEffect为D3DSWAPEFFECT_DISCARD,还有BackBufferFormat为D3DFMT_UNKNOWN。

 
 最后的步骤是使用CreateDevice方法产生一个Direct3D设备,就像下面程序说明的一样。


上述程序通过使用D3DADAPTER_DEFAULT标志用默认的适配器产生了设备。大多数情况下,系统会只有一个适配器,除非你安装了多个图形卡。使用D3DDEVTYPE_HAL参数表明了你喜欢硬件加速超过软件加速。这段代码使用了D3DCREATE_SOFTWARE_VERTEXPR

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值