Microsoft DirectX 8.0 (Visual Basic)

D3DXMesh.GenerateAdjacency

Microsoft® DirectX® (.x) ファイルに格納されているポイント表現データを面隣接性情報に変換する。面隣接性情報は、最適化および単純化の操作においてより優れた柔軟性をもたらす。

object.GenerateAdjacency( _ 
    Epsilon As Single, _ 
    Adjacency As Any)

指定項目

object
D3DXMesh オブジェクトを表すオブジェクト式。
Epsilon
頂点を結合するときの間隔を示す距離。このパラメータは現在は無視され、Epsilon 0.0 を使用する。
Adjacency
メッシュの面隣接性配列の転送先バッファを表す、Long 値の配列の最初の要素。面隣接性は、配列の配列として格納される。最も内側の配列は、隣接する三角形の 3 つのインデックスで、外側の配列は、メッシュ内の三角形ごとの面隣接性の 1 セットである。この配列のこのサイズは、面の数の最大値に 3 を乗算したものである。「注意」を参照すること。

エラー コード

失敗した場合はエラーが発生し、Err.Number に次のいずれかの値が設定される。

D3DERR_INVALIDCALL
D3DXERR_INVALIDDATA
E_OUTOFMEMORY

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

注意

このメソッドは論理的に頂点を結合するだけで、メッシュに変更を加えるものではない。

次のサンプル コードは、D3DXBuffer オブジェクトを使用して隣接性情報を渡す方法を示している。

Dim d3dxbAdjacency As D3DXBuffer
Dim Eps As Single

' このコードでは d3dxbAdjacency および Eps が正しく
' 初期化されていると仮定している。
Call D3DX8.GenerateAdjacency(Eps, ByVal d3dxbAdjacency.GetBufferPointer)