纹理渲染
为了使绘制出来的模型具有很强的真实感,需要借助编程接口—DirectX对模型进行纹理贴图,达到还原的真实感。纹理指的是三维物体表面的图案和花纹。纹理贴图是指采用贴图的方法,将一张二维的图像贴到三维物体表面,形成三维物体表面的纹理。纹理和材质一样是物体表面的属性,结合纹理,材质和光照对三维场景进行渲染,可以使渲染的图形更加逼真。
纹理坐标系
实际上,纹理是一个二维数组,它的元素是一些颜色值。单个的颜色值被称为纹理元素(texture elements)或纹理像素(texel)。纹理是通过使用纹理坐标来映射的,当将一个纹理应用于一个图元时,它的纹理像素地址必须要映射到对象坐标系中,然后再被平移到屏幕坐标系或像素位置上。在DirectX中,纹理坐标系(纹理空间)由水平方向的u轴和沿垂直向下方向的v轴构成(如下图4-11所示),坐标系原点是纹理空间的右上方的顶点。为顶点选择纹理坐标,就是把纹理图像的像素点颜色赋予相应的顶点。纹理坐标是一对浮点值,用于访问纹理图像中的信息。在处理二维图像时,纹理坐标分别称为“tu”和“tv”。tu和tv分别用于设置顶点纹理信息起始位置的宽度比和高度比。可以在多边形表面上的不同点之间对纹理图像做内插处理。重要的是在定义纹理坐标时要保持一致