D3DXUVAtlasPack 関数
メッシュパーティション分割データをアトラスにパックします。
構文
HRESULT D3DXUVAtlasPack(
_In_ LPD3DXMESH pMesh,
_In_ UINT dwWidth,
_In_ UINT dwHeight,
_In_ FLOAT fGutter,
_In_ DWORD dwTextureIndex,
const DWORD *pdwPartitionResultAdjacency,
_In_ LPD3DXUVATLASCB pCallback,
_In_ FLOAT fCallbackFrequency,
_In_ LPVOID pUserContent,
_In_ DWORD dwOptions,
_In_ LPD3DXBUFFER pFacePartitioning
);
パラメーター
-
pMesh [in]
-
種類: LPD3DXMESH
atlas を計算するためのオブジェクト ジオメトリを含む入力メッシュへのポインター ( ID3DXMesh を参照)。 少なくとも、メッシュには位置データと 2D テクスチャ座標が含まれている必要があります。
-
dwWidth [in]
-
型: UINT
テクスチャの幅。
-
dwHeight [in]
-
型: UINT
テクスチャの高さ。
-
fGutter [in]
-
型: FLOAT
アトラス上の 2 つのグラフ間の最小距離 (テクセル単位)。 余白は常に幅でスケーリングされます。そのため、512 x 512 テクスチャで 2.5 の余白を使用する場合、2 つのグラフ間の最小距離は 2.5 / 512.0 テクセルです。
-
dwTextureIndex [in]
-
型: DWORD
使用するテクスチャ座標のセットを識別する 0 から始まるテクスチャ座標インデックス。
-
pdwPartitionResultAdjacency
-
型: const DWORD*
メッシュ内の各面の 3 つの近傍を指定する、1 つの面に 3 つの DWORD の配列へのポインター。 D3DXUVAtlasPartition から返される ppPartitionResultAdjacency から派生する必要があります。 各グラフの端を見つけるには、パーティション ステップでグラフが切り取られた場所を Pack で把握する必要があるため、この値を NULL にすることはできません。
-
pCallback [in]
-
種類: LPD3DXUVATLASCB
進行状況の監視に役立つコールバック関数 ( LPD3DXUVATLASCB を参照) へのポインター。
-
fCallbackFrequency [in]
-
型: FLOAT
D3DX がコールバックを呼び出す頻度を指定します。適切な既定値は 0.0001f です。
-
pUserContent [in]
-
種類: LPVOID
コールバック関数に返される void ポインター。
-
dwOptions [in]
-
型: DWORD
このオプション パラメーターは現在予約されています。
-
pFacePartitioning [in]
-
種類: LPD3DXBUFFER
最終的な顔パーティション分割の配列を含む ID3DXBuffer へのポインター。 各要素には、顔ごとに 1 つの DWORD が含まれています。
戻り値
型: HRESULT
関数が成功した場合、戻り値はD3D_OK。それ以外の場合、値はD3DERR_INVALIDCALL。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目