D3DXMatrixTranslation D3D中的平移函数

转自: http://hi.baidu.com/yufd1986/blog/item/f12004448e22108eb3b7dc44.html
在3D里平移矩阵,应是使用最多的矩阵,由于每个物体相对位置,总是通过平移矩阵来变换出来。物体的整体移动,就是坐标
点的移动。比如从点(x,y,z)移动到新的位置(x', y', z'),就可以使用下面的矩阵乘法实现:
= ×
上面的表示了X轴,Y轴,Z轴的平移距离。在D3D提供了平移函数D3DXMatrixTranslation,使用这个函数就可以设置一个平移矩
阵。它的具体参数如下:
D3DXMATRIX * D3DXMatrixTranslation(
D3DXMATRIX * pOut,
FLOAT x,
FLOAT y,
FLOAT z
);
第一个参数是返回平移矩阵,第二个参数是X轴的平移量,第三个参数是Y轴的平移量,第四个参数是Z轴的平移量。
比如要沿着Z轴的正方向平移5个单位,就需要按下面来设置平移矩阵:
D3DXMATRIX mTrans;
D3DXMatrixTranslation(&mTrans,0,0,5);
比如:我创建了一个茶壶: D3DXCreateTeapot( Device, &Objects, 0); 我把他平移一下: D3DXMatrixTranslation(&Objects, -5.0f, 0.0f, 5.0f);

你可能感兴趣的:(float)