您的位置:首页 > 编程语言 > C语言/C++

【CSDN浅墨】读书笔记1<Direct3D基础知识以及Direct3D初始化步骤>

2013-06-29 18:42 796 查看
CSDN浅墨大神,博客专栏:http://blog.csdn.net/column/details/vc-game-programming.html?page=2

Direct3D体系结构



关于COM接口:

COM(Component Object Model, 组件对象模型),是微软定义的标准接口,能够使DIRECTX独立于编程语言并具备向下兼容的技术,当作C++类来使用,COM接口是一组具有特定功能的抽(特么太抽象了,目前还搞不懂,类似与虚表里头的函数指针么???),另外COM接口类似于智能指针,创建了一个,不用的时候Release掉,COM接口具有引用计数器。象集合

关于硬件抽象层HAL(Hardware Abstraction Layer)

微软做了一个很小的底层,以隐藏不同机器间的差异,这一层被称为硬件抽象层HAL。Direct3D利用HAL实现了设备无关性,通过Direct3D可以编写出与设备无关的高效代码。

关于参考关山设备REF(Reference Rasterizer Device)

Direct3D提供的某些功能不被显卡支持,要使用的这些功能只有通过参考光栅设备REF采用软件运算的方式完全支持Direct3D API。

DirectX初始化分为4部:

1.创建COM接口

2.获取设备信息,规定顶点运算格式(硬件顶点计算、软件顶点计算)

3.填充D3DPRESENT_PARAMETERS结构体(后台缓冲信息、窗口模式、像素格式、刷新率等)

4.创建设备(通过COM接口以及第2步、第3步获得的变量完成全局变量LPDIRECT3DDEVICE9的创建)

注意:

创建DirectX初始化程序需要用到d3d9.lib和d3dx9.lib库文件,不然有些函数无法使用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ DirectX
相关文章推荐