http://blog.csdn.net/loveclover

第一步:自定义一个顶点类型

Vertices示例使用3个顶点渲染了一个2D的三角形。示例介绍了顶点缓冲(vertex buffer)的概念 -- 顶点缓冲就是一个用来存储和渲染顶点的Direct3D对象。可以通过指定一个结构并设置相应的顶点格式(FVF)来定义成很多不同形式的顶点。示例中的顶点结构定义如下:

struct CUSTOMVERTEX
{
    FLOAT x, y, z, rhw; 
// The transformed position for the vertex.
    DWORD color;        // The vertex color.
}
;

上面的结构指定了自定义顶点类型的格式。下一步就是要定义顶点格式,它用来描述顶点缓冲中的所有顶点。下面的代码定义了一种顶点格式(FVF),并与上面创建的顶点类型结构相对应。

#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZRHW|D3DFVF_DIFFUSE)

D3DFVF用来描述用户使用了什么类型的顶点。上面的代码使用了D3DFVF_XYZRHW和D3DFVF_DIFFUSE标志位,他们表明了自定义的顶点类型拥有一个经过转换的坐标点和一个颜色描述部分。

既然已经定义了向量格式和FVF,下面一步就是要将顶点填充到顶点缓冲中去。详见第二步:设置顶点缓冲

注意:本示例中的顶点都是被转换过的(transformed)。换句话说,它们已经位于2D-Windows坐标系中。即屏幕左上角为起点(0,0),x坐标轴向右为正方向,y坐标轴以向下为正方向。这些顶点也是有颜色的,这意味着它们并不使用Direct3D的灯光,而是本身就带有某种颜色。

posted on 2008-03-06 22:09 Sure 阅读(342) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

导航

统计

常用链接

留言簿(5)

随笔分类

随笔档案

相册

搜索

最新评论

阅读排行榜

评论排行榜