概览
本教程将介绍DXUT。DXUT是一个建立在Direct3D之上的一个层,它能帮助我们建立一个更健壮、更易于生成的示例,原型,工具或游戏,它基于典型应用简化了Windows和Direct3D的API。
本教程的显示结果与上一个教程相同,但是实现起来简单得多。

源代码
(SDK root)\Samples\C++\Direct3D10\Tutorials\Tutorial08
DXUT
DXUT提供了一个简化的过程用来创建窗口,创建(或选择)一个Direct3D设备,处理Windows消息,这可以让你节省实现这些标准任务所用的时间。
用于Direct3D的DXUT还是高度组件化的,DXUT的核心组件包括标准窗体的创建,设备创建和管理功能。可选组件包括相机控制,GUI系统和网格处理。本教程介绍DXUT核心组件,可选组件在后面的教程中介绍。本教程中介绍的功能包括设备创建,主循环和简单的键盘输入。
DXUT开放了很多用户可以挂钩的回调函数,在程序执行过程中回调函数可以被DXUT在逻辑点上进行调用。你可以将自定义代码插入到这些回调函数中。
DXUT支持程序包含Direct3D 9和/或Direct3D 10代码路径,这样就可以让DXUT选择最适合程序当前运行的系统的代码路径。但是,本教程只关注Direct3D 10绘制,让DXUT同时生成Direct3D 9和Direct3D 10程序的例子,可参见DirectX SDK中的BasicHLSL10示例。
设置Callback函数
修改程序的WinMain方法是第一步。在前面的教程中,WinMain调用initialization方法,然后进入消息循环。在DXUT框架中,WinMain的工作类似。
首先,由程序设置回调函数。这些函数是在当特定事件发生时由DXUT调用的,这些事件包括设备创建,交换链创建,键盘输入,帧更新(frame move)和帧绘制。
|
1
2
3
4
5
6
7
8
9
10
11
|

DXUT是Direct3D上的一个辅助层,帮助简化窗口、设备管理和消息处理。教程介绍了如何设置回调函数,如IsD3D10DeviceAcceptable、OnD3D10CreateDevice等,以及如何处理设备初始化和绘制。通过DXUTTrace进行调试,设备创建和销毁的回调函数确保资源的有效管理。DXUT还提供了OnFrameMove和OnD3D10FrameRender用于帧更新和绘制。
最低0.47元/天 解锁文章
1302

被折叠的 条评论
为什么被折叠?



