2014-03-30 61 views
0

我只是想知道如何在Direct X 11中從Direct X 9執行以下代碼?我知道Direct X 11中的MatrixRotationAxis和TransformCoord只包含2個參數,因此我不確定它是否與下面的代碼一樣。如何在Direct x 11中執行此操作?

D3DXMATRIX pitchMatrix; 
D3DXMatrixRotationAxis(&pitchMatrix, &right, pitch); 
D3DXVec3TransformCoord(&look, &look, &pitchMatrix); 
D3DXVec3TransformCoord(&up, &up, &pitchMatrix); 

回答

1

它與DirectX版本沒有任何關係。這是關於數學圖書館。在棄用和剝離SDK中的D3DXMath之後,我們不得不使用DirectXMath或第三方數學庫。

有關移植說明,請參見Living without D3DX

此外,大概你會發現this answer有用。

編輯:值得補充的是DirectXMath具有特定對齊要求。請確保您不要忽視(參見:link

編輯2:具體而言,XMMatrixRotationAxis接受2個參數,因爲它返回結果。與D3DXMatrixRotationAxis你期望結果在第三個參數。有關詳細信息,請參見MSDN docs

希望這有助於!快樂移植!