Windows游戏开发之Direct用顶点生成Cube

  • Windows游戏开发之Direct用顶点生成Cube已关闭评论
  • 19,392 views
  • A+

Direct3D的学习终于要走入正题了

下面用顶点来渲染一个Cube

 

创建一个储存顶点信息的结构体

 

FVF是顶点格式,x,y,z就是坐标

 

需要一个顶点缓存和一个索引缓存

定义两个缓存变量指针

然后创建这两个Buffer

两个创建都差不多

然后访问这两个缓存

填入相关的顶点数据和索引数据

这里讲一下Lock方法

设置视图矩阵

视图变换就是将世界中所有物体

跟随相机做一样的变换

从而使相机到达某一个位置

*position是相机在世界坐标系的位置

*target是相机在世界坐标系的目标点

*up世界坐标系上的方向

 

设置投影矩阵

投影就是将N维变成N-1维

这里就是将3d数据变成2d图片

设置渲染模式

这里就没什么好说了

-

在Update中设置世界坐标系转换矩阵

绕X轴旋转45度

然后绕Y轴一直旋转

-

最后进行绘制的准备

1.设置资源流(顶点们)

2.设置索引缓存

SetIndices(索引缓存)

-

3.设置顶点格式

SetFVF()

这里只用了D3DFVF_XYZ坐标

具体还有查看D3DFVF

-

最后用索引的方式绘制

最后,看看结果

Windows游戏开发之Direct用顶点生成Cube