DirectX游戏编程入门——第二部分(游戏编程工具箱) ——3D渲染基础本系列文章由 net_assassin 整理编写,转载请
DirectX游戏编程入门——第二部分(游戏编程工具箱) ——3D渲染基础
本系列文章由 net_assassin 整理编写,转载请注明出处。
http://blog.csdn.net/net_assassin/article/category/1100363
作者:net_assassin 邮箱: net_assassin@hotmail.com 期待着与志同道合的朋友们相互交流
3D编程介绍如今,每个人都有一块3D加速的视频卡,这早已是定论。3D编程的关键组成部分在Direct3D中渲染一个场景,有三个关键组成部分:
- 世界变换 在“世界”中移动3D对象,“世界”这个词描述的是整个场景。换句话说,世界变化导致场景中的物体移动、旋转和缩放(一次一个对象)。试图变换 打个比方说,这是照相机,它定义用户在屏幕上所看到的内容。这个照相机可以放置在“世界”中的任何地方。如果想移动照相机,只需进行视图变换即可。投影变换 这是最后一步,在这里将视图变换的结果(照相机看到的对象)绘制到屏幕上,形成由像素组成的平面2D图像。投影确定已渲染的场景上样子(无论定义的屏 幕纵横比如何影响输出)。
- 顶点 为视频卡增加性能的高级3D图形芯片看到的只有顶点。视频卡本身实际上只看形成每个三角形的三个角的顶点。填充由这三个顶点所形成的空三角形是视频卡的工 作。
强大的3D引擎也使用所谓的纹理缓存,以便共享同一纹理的多边形重用它们。因为3D卡一次只能“使用”一个纹理,然后再场景中任何需要这一纹理的多边形上使用这个纹理,接下来再处理下一个纹理,这样的做法会更有效率。
创建顶点缓冲区首先必须为顶点缓冲区定义一个变量:LPDIRECT3DVERTEXBUFFER9 buffer;
通过CreateVertexBuffer函数来创建顶点缓冲区
