小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

D3DXMATRIX

 haodafeng_org 2011-01-08

D3DXMATRIX重載了很多運算符,使得矩陣的運算很簡單。矩陣的運算方法我不打算多說了,下面只介紹和矩陣性質有關的三個函數。


    產生一個單位矩陣:D3DXMATRIX *D3DXMatrixIdentity(
                            D3DXMATRIX *pout);//返回結果
    求轉置矩陣:D3DXMATRIX *D3DXMatrixTranspose(
    D3DXMATRIX *pOut,//返回的結果
    CONST D3DXMATRIX *pM );//目標矩陣
    求逆矩陣:D3DXMATRIX *D3DXMatrixInverse(
    D3DXMATRIX *pOut,//返回的結果
    FLOAT *pDeterminant,//設為0
    CONST D3DXMATRIX *pM );//目標矩陣
    至于什么是單位矩陣,什么是轉置矩陣,什么是逆矩陣我就不說了,可以看一下線性代數的書,一看就明白了。簡單的加減乘除法可以使用D3DXMATRIX結構體里面重載的運算符。兩個矩陣相乘也可以用函數來實現(xiàn),這將在接下來的矩陣變換中講到。
·矩陣變換
矩陣的基本變換有三種:平移,旋轉和縮放。
    平移:
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軸上縮放的量
);
利用IDirect3DDevice9接口的SetRenderState函數可修改或重新設置Direct3D設備的背面剔除的渲染狀態(tài),當然該函數的功能是十分豐富的,不局限于設置背面剔除狀態(tài),

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多