D3DXSavePRTCompBufferToFile 関数
圧縮された事前計算済み放射転送 (PRT) バッファーをディスクに保存します。
構文
HRESULT D3DXSavePRTCompBufferToFile(
_In_ LPCSTR pFileName,
_In_ LPD3DXPRTCOMPBUFFER pBuffer
);
パラメーター
pFileName [in]
種類: LPCSTR
圧縮バッファーの保存先となるファイルの名前。
pBuffer [in]
入力 ID3DXPRTCompBuffer オブジェクトへのポインターのアドレス。
戻り値
種類: HRESULT
メソッドが成功した場合、戻り値は D3D_OK。 メソッドが失敗した場合は、戻り値を D3DERR_INVALIDCALLできます。
解説
コンパイラ設定によって、関数のバージョンも決定されます。 Unicode が定義されている場合、関数呼び出しは D3DXSavePRTCompBufferToFileW に解決されます。 それ以外の場合、関数呼び出しは D3DXSavePRTCompBufferToFileA に解決されます。
PCA ファイル形式は、ヘッダーと 2 つまたは 3 つのデータ ブロックの形式のバイナリ ファイルです。
struct PRTCompressHeader
{
UINT NumSamples;
UINT NumCoeffs;
UINT NumChannels;
UINT TexWidth;
UINT TexHeight;
UINT bIsTex;
UINT NumClusters;
UINT NumPCA;
};
bIsTex が 0 以外の場合、NumSamples は と等しいTexWidth * TexHeight
必要があります。
ヘッダーの後に続く基礎データ ブロックは NumCoeffs * NumChannels * (NumPCA + 1) * NumClusters * sizeof(float)
バイトです。
次に、PCA 重み付けデータ ブロック (バイト) を示 NumPCA * NumSamples * sizeof(float)
します。
NumClusters が 1 より大きい場合、ファイルはクラスター ID データ ブロック (NumSamples * sizeof(UINT)
バイト) で終わります。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|