D3DXSHPRTCompSplitMeshSC 関数
事前計算済みの放射転送 (PRT) シミュレーターの頂点バージョンの圧縮結果と共に使用されます。 D3DXSHPRTCompSuperCluster を呼び出した後、この関数を使用して、スーパー クラスターごとにメッシュを面/頂点のグループに分割できます。 各スーパー クラスターには、いずれかのクラスターに分類された頂点を含むすべての顔が含まれます。 この一連の面に接続されているすべての頂点は、返される配列 ppVertStatus にも含まれ、頂点がスーパー クラスターに属しているかどうかを示します。
構文
HRESULT D3DXSHPRTCompSplitMeshSC(
_In_ UINT *pClusterIDs,
_In_ UINT NumVertices,
_In_ UINT NumCs,
_In_ UINT *pSClusterIDs,
_In_ UINT NumSCs,
_In_ LPVOID pInputIB,
_In_ BOOL InputIBIs32Bit,
_In_ UINT NumFaces,
_Inout_ LPD3DXBUFFER *ppIBData,
_Inout_ UINT *pIBDataLength,
_Inout_ BOOL OutputIBIs32Bit,
_Inout_ LPD3DXBUFFER *ppFaceRemap,
_Inout_ LPD3DXBUFFER *ppVertData,
_Inout_ UINT *pVertDataLength,
_Inout_ UINT *pSCClusterList,
_Inout_ D3DXSHPRTSPLITMESHCLUSTERDATA *pSCData
);
パラメーター
-
pClusterIDs [in]
-
型: UINT*
NumVertices クラスター ID (圧縮バッファーから抽出)。
-
NumVertices [in]
-
型: UINT
元のメッシュ内の頂点の数。
-
NumCs [in]
-
型: UINT
クラスターの数 (圧縮への入力パラメーター)。
-
pSClusterIDs [in]
-
型: UINT*
スーパー クラスター ID を含むサイズ NumC の配列。
-
NumSCs [in]
-
型: UINT
D3DXSHPRTCompSuperCluster に割り当てられたスーパー クラスターの数。
-
pInputIB [in]
-
種類: LPVOID
メッシュの生インデックス バッファー。 形式は InputIBIs32Bit によって異なります。
-
InputIBIs32Bit [in]
-
種類: BOOL
TRUE の場合、インデックス バッファーは 32 ビットに設定されます。それ以外の場合は 16 ビット。
-
NumFaces [in]
-
型: UINT
元のメッシュ内の面の数 (pInputIB はこの長さの 3 倍です)。
-
ppIBData [in, out]
-
種類: LPD3DXBUFFER*
結果として得られる分割面を含む生インデックス バッファー。 InputIBIs32Bit によって決定される形式。 関数によって割り当てられます。
-
pIBDataLength [in, out]
-
型: UINT*
関数で割り当てられた ppIBData の長さ。
-
OutputIBIs32Bit [in, out]
-
種類: BOOL
TRUE の場合は、符号なし整数配列を割り当てます。それ以外の場合は、符号なし短い配列を割り当てます。
-
ppFaceRemap [in, out]
-
種類: LPD3DXBUFFER*
ppIBData 内の各顔を元の顔にマッピングします。 長さは *pIBDataLength/3 です。
-
ppVertData [in, out]
-
種類: LPD3DXBUFFER*
新しい頂点データ構造。 pVertDataLength のサイズ。
-
pVertDataLength [in, out]
-
型: UINT*
分割メッシュ内の新しい頂点の数。 関数で割り当てられます。
-
pSCClusterList [in, out]
-
型: UINT*
各スーパークラスターの pSCData インデックスが (pClusterIDs* フィールド) に格納される長さ NumC の配列には、スーパークラスターで並べ替えられたクラスターが含まれます。
-
pSCData [in, out]
-
種類: D3DXSHPRTSPLITMESHCLUSTERDATA*
スーパー クラスターごとの構造。 ppIBData、pSCClusterList、および ppVertData へのインデックスが含まれます。
戻り値
種類: HRESULT
関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORY。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目