Platform SDK: DirectX |
Direct3DX ユーティリティ ライブラリは、ID3DXMatrixStack インターフェイスを提供している。これは、行列スタックに対して行列をプッシュしたり、ポップするための機能である。行列スタックを実装すると、変換階層をたどりながら行列を効率的に追跡できる。
Direct3DX ユーティリティ ライブラリは、行列スタックを使用して変換操作を行列として保存する。ID3DXMatrixStack インターフェイスのさまざまなメソッドでは、現在の行列や、スタックの一番上にある行列を使用する。現在の行列をクリアするには、ID3DXMatrixStack::LoadIdentity メソッドを使用する。現在のトランスフォーム行列としてロードする特定の行列を明示的に指定する必要がある場合は、ID3DXMatrixStack::LoadMatrix メソッドを使用する。現在の行列を指定した行列により乗算するには、ID3DXMatrixStack::MultMatrix メソッドまたは ID3DXMatrixStack::MultMatrixLocal メソッドのいずれかを呼び出す。
ID3DXMatrixStack::Pop メソッドを使用すれば前のトランスフォーム行列に戻ることが可能であり、またID3DXMatrixStack::Push メソッドを使用すればトランスフォーム行列をスタックに追加できる。
行列スタックの個別の行列は、Direct3DX ユーティリティ ライブラリの D3DXMATRIX 構造体により定義された 4 × 4 同次行列として表される。