次の方法で共有


ID3DXBaseMesh::GenerateAdjacency メソッド

メッシュ エッジのリストと、各エッジを共有する面のリストを生成します。

構文

HRESULT GenerateAdjacency(
  [in] FLOAT Epsilon,
  [in] DWORD *pAdjacency
);

パラメーター

Epsilon [in]

型: FLOAT

位置が ε 未満の頂点を一致として扱う必要があることを指定します。

pAdjacency [in]

種類: DWORD*

隣接する面のインデックスで塗りつぶされる、1 つの顔につき 3 つの DWORD の配列へのポインター。 この配列のバイト数は、少なくとも 3 * ID3DXBaseMesh::GetNumFaces * sizeof(DWORD) である必要があります。

戻り値

種類: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、E_OUTOFMEMORY。

注釈

アプリケーションがメッシュの隣接情報を生成した後、メッシュ データを最適化して描画パフォーマンスを向上させることができます。

隣接バッファー内のエントリの順序は、インデックス バッファー内の頂点インデックスの順序によって決まります。 隣接する三角形 0 は、常にコーナー 0 と 1 のインデックスの間のエッジに対応します。 隣接する三角形 1 は常に角 1 と 2 のインデックスの間のエッジに対応し、隣接する三角形 2 はコーナー 2 と 0 のインデックス間のエッジに対応します。

要件

要件
ヘッダー
D3DX9Mesh.h
ライブラリ
D3dx9.lib

こちらもご覧ください

ID3DXBaseMesh

ID3DXMesh::Optimize

ID3DXMesh::OptimizeInplace