Microsoft DirectX 8.0 (Visual Basic)

D3DXMesh.Optimize

メッシュの面および頂点の順番変更を制御し、パフォーマンスを最適化する。

object.Optimize( _ 
    Flags As Any, _ 
    Adjacency As Any, _ 
    OptAdj As Any, _ 
    FaceRemap As Any, _ 
    BuffVertexRemap As D3DXBuffer, _ 
    OptMesh As D3DXMesh)

指定項目

object
D3DXMesh オブジェクトを表すオブジェクト式。
Flags
CONST_D3DXMESHOPT 列挙によって定義される 1 つ以上のフラグの組み合わせ。実行する最適化の種類を指定する。

最適化フラグの D3DXMESHOPT_STRIPREORDER および D3DXMESHOPT_VERTEXCACHE はそれぞれ相互に排他的である。

Adjacency
ソース メッシュに含まれる各面の 3 つの隣接面を指定する、1 面あたりの 3 つの Long 値の配列の最初の要素。
OptAdj
最適化されたメッシュの面隣接性配列の転送先バッファを表す、配列の最初の要素。面隣接性は、配列の配列として格納される。最も内側の配列は、隣接する三角形の 3 つのインデックスで、外側の配列は、メッシュ内の三角形ごとの面隣接性の 1 セットである。
FaceRemap
各面の新規インデックスを格納する転送先バッファを表す、配列の最初の要素。
BuffVertexRemap
各頂点の新規インデックスを格納する、D3DXBuffer オブジェクト。
OptMesh
最適化されたメッシュを表す、D3DXMesh オブジェクト。

エラー コード

失敗した場合はエラーが発生し、Err.NumberE_OUTOFMEMORY が設定される。

エラー トラッピングの詳細については、Microsoft® Visual Basic® の「エラー処理」を参照すること。

注意

このメソッドは D3DXBaseMesh.CloneMesh メソッドによく似ているが、メッシュのクローン生成中に最適化を実行できる点が異なる。

出力メッシュは、入力メッシュのすべての作成パラメータを継承する。