2.4.2 三角形、平面法线、顶点法线
在Direct3D 中,三角形是构成实体的基本单位,因为一个三角形正好是一个平面,以 三角形面为单位进行渲染效率最高。大量的三角形组合在一起,构成复杂的多边形或者曲面。
图4(a)三角形组成的立方体 图4(
论文网http://www.751com.cn/ b)由三角形构成的一个球面
一个三角形由三个点构成,习惯上把这些点称为顶点(Vertex )。三角形平面有正、反面之分,由顶点的排列顺序决定:顶点按顺时针排列的表面是正面,如图5所示。其中与三角形平面垂直、且指向正面的矢量称为该平面的法线(Normal )。在Direct3D 中,为了提高渲染效率,缺省条件下只有正面可见,不过可以通过IDirect3DDevice9::SetRenderState 来改 变设置,其对应的渲染状态常数为D3DRS_CULLMODE,具体用法请参阅SDK文档。
图5:Direct3D中三角形顶点的顺序及正面定义
顶点法线(Vertex Normal)是过顶点的一个矢量,用于在高洛德着色(Gouraud Shading)中计算光照和纹理效果。在生成曲面时,通常令顶点法线和相邻平面的法线保持等角,如图6(a)所示,这样进行渲染时,会在平面接缝处产生一种平滑过渡的效果。如果是多边形,则令顶点法线等于该点所属平面(三角形)的法线,如图6(b) 所示,以便在接缝处产生突出的边缘。本文来自辣.文'论^文·网原文请找腾讯3249-114
图6(a)平滑过渡 图6(b)边缘突出
2.4.3 Direct3D 设备支持的图元格式
在Direct3D 中,三文实体都是由一些基本图元组合而成的,总共有6 种图元格式:
点列(Point Lists )由顶点组成的集合;
线列(Line Lists)由直线段组成的集合;
图7(a)点列 图7(b)线列
线带(Line Strips )由互相连接的直线段组成的集合;
三角形列(Triangle Lists)由三角形组成的集合,每三个顶点构成一个三角形;
图8(a)线带 图8(b)三角形列
三角形带(Triangle Strips )由相接的三角形组成的集合。在例图中,v1、v2、v3 构成第一个三角形,v2、v3、v4 构成第二个三角形... ... (注意:三角形带的正面由第一个三角形决定,因此第二个三角形顶点的排列顺序实际上应该为v2、v4、v3 );
三角扇形(Triangle Fans)由相接且共点的三角形组成,v1、v2、v3 构成第一个三角形,v1、v3、v4 构成第二个三角形... ...;
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
玫瑰根系模拟仿真及建模 第4页下载如图片无法显示或论文不完整,请联系qq752018766