导航

忆龙2009:D3D矩阵变换函数

Posted on 2010-01-18 19:53  忆龙2009  阅读(230)  评论(0编辑  收藏  举报

矩阵的基本变换有三种:平移,旋转和缩放。

平移:
D3DXMATRIX *D3DXMatrixTranslation(
    D3DXMATRIX* pOut,      //返回的结果
    FLOAT x,                       //X轴上的平移量
    FLOAT y,                       //Y轴上的平移量
    FLOAT z)                       //Z轴上的平移量

绕X轴旋转:
D3DXMATRIX *D3DXMatrixRotationX(
    D3DXMATRIX* pOut,     //返回的结果
    FLOAT Angle                 //旋转的弧度
);

绕Y轴旋转:
D3DXMATRIX *D3DXMatrixRotationY(
    D3DXMATRIX* pOut,    //返回的结果
    FLOAT Angle                //旋转的弧度
);

绕Z轴旋转:
D3DXMATRIX *D3DXMatrixRotationZ(
    D3DXMATRIX* pOut,   //返回的结果
    FLOAT Angle               //旋转的弧度
);

绕指定轴旋转:
D3DXMATRIX *D3DXMatrixRotationAxis(
    D3DXMATRIX *pOut,//返回的结果
    CONST D3DXVECTOR3 *pV,//指定轴的向量
    FLOAT Angle             //旋转的弧度
);

缩放:
D3DXMATRIX *D3DXMatrixScaling(
    D3DXMATRIX* pOut, //返回的结果
    FLOAT sx,                //X轴上缩放的量
    FLOAT sy,                //Y轴上缩放的量
    FLOAT sz                 //Z轴上缩放的量
);