Microsoft DirectX 8.0 (Visual Basic) |
object.ConvertToIndexedBlendedMesh( _ Options As Long, _ AdjacencyIn As Any, _ PaletteSize As Long, _ AdjacencyOut As Any, _ RetNumBoneCombinations As Long, _ RetBoneCombinationTable As D3DXBuffer) As D3DXMesh
ブレンドされたメッシュを表す D3DXMesh オブジェクト。
失敗した場合はエラーが発生し、Err.Number に E_OUTOFMEMORY が設定される。
エラー トラッピングの詳細については、Microsoft® Visual Basic® の「エラー処理」を参照すること。
このメソッドは、スキン メッシュを受け取り、インデックス付きのブレンドされたメッシュに変換する。変換には、DirectX 8.0 で利用可能になった Direct3D インデックス付き頂点ブレンディング機能を使用する。インデックス付き頂点ブレンディングでは、インデックスを使用して、行列パレットへのインデックスを作成する。詳細については、「ジオメトリ ブレンディング」を参照すること。スキン メッシュからインデックス付きのブレンドされたメッシュに変換すると、単一の描画呼び出しの中でメッシュをレンダリングできる。
次のサンプル コードは、D3DXBuffer オブジェクトを使用して隣接性情報を渡す方法を示している。
Dim Opts As Long Dim D3DXbAdjacencyIn As D3DXBuffer Dim PalSize as Long Dim D3DXbAdjacencyOut As Any Dim NumBC As Long Dim RetTable As D3DXBuffer ' このコードでは、すべての引数が ' 正しく初期化されていると仮定している。 Call D3DX8.ConvertToIndexedBlendedMesh(Opts, ByVal D3DXbAdjacencyIn.GetBufferPointer, PalSize, D3DXbAdjacencyOut, _ NumBC, RetTable )