Microsoft DirectX 8.0 (C++)

D3DXWeldVertices

複製された、等しい属性を持つ頂点を結合する。

HRESULT D3DXValidMesh(
  CONST LPD3DXMESH pMesh,
  float fEpsilon,
  CONST DWORD* pAdjacencyIn,
  DWORD* pAdjacencyOut,
  DWORD* pFaceRemap,
  LPD3DXBUFFER* ppVertexRemap
);

パラメータ

pMesh
[in] 頂点結合の元となるメッシュである ID3DXMesh オブジェクトへのポインタ。
fEpsilon
[in] 頂点が結合される、頂点属性の差。
pAdjacencyIn

[in] ソース メッシュに含まれる各面の 3 つの隣接面を指定する、1 面あたりの 3 つの DWORD の配列へのポインタ。このパラメータが NULL の場合、ID3DXMesh::GenerateAdjacency が呼び出されて、論理隣接性情報が作成される。

pAdjacencyOut
[in, out] 最適化されたメッシュの面隣接性配列に使用する転送先バッファへのポインタ。面隣接性は、配列の配列として格納される。最も内側の配列は、隣接する三角形の 3 つのインデックスで、外側の配列は、メッシュ内の三角形ごとの面隣接性の 1 セットである。
pFaceRemap
[out] 各面の新しいインデックスを格納している転送先バッファへのポインタ。
ppVertexRemap
[out] 各頂点の新しいインデックスを格納する、ID3DXBuffer インターフェイスへのポインタのアドレス。

戻り値

成功した場合は D3D_OK を返す。

失敗した場合は、次のいずれかの値を返す。

D3DERR_INVALIDCALL
E_OUTOFMEMORY

注意

このメソッドは、与えられた隣接性情報を使って、複製するポイントを指定する。このメソッドは、Epsilon の比較によって頂点を結合する。等しい位置を持つ頂点があらかじめ計算され、ポイント表現データによって表されている必要がある。

このメソッドは論理的に結合された頂点を取得し、同様の成分を持つ頂点を結合する。fEpsilon 内の法線または fEpsilon 内のテクスチャ座標などである。

動作環境

  ヘッダー : D3dx8mesh.h で宣言。
  インポート ライブラリ : D3dx8.lib を使用。