为了把用浮点数表示的纹理坐标映射到texel地址,Direct3D执行下面的计算。
Tx = (u x Mx)- 0.5;
Ty = (v x My) - 0.5;
在这些公式中,Tx和Ty为水平/垂直方向的输出texel坐标,u和v为顶点提供的水平/垂直方向的纹理坐标。Mx和My元素表示当前mipmap级水平/垂直方向的texel的数量。本节剩余部分将主要讨论在水平方向上从texel到像素的映射,垂直方向上的映射与水平方向完全相同。
把纹理坐标0.0和1.0代入以上公式,会使纹理坐标0.0映射到本次纹理迭代的第一个texel和上次纹理迭代的最后一个texel的中间,纹理坐标1.0会被映射到本次纹理迭代的最后一个texel和下次纹理迭代的第一个texel的中间。对于一个宽度为4的迭代纹理,在mipmap的第0级,下图显示了系统把坐标0.0和1.0映射到哪里。
[img]http://www.gesoftfactory.com/developer/Textures.htm#纹理坐标
请问最后的这个图是怎么得来的?