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 文件格式是标头形式的二进制文件,然后是两个或三个数据块。
struct PRTCompressHeader
{
UINT NumSamples;
UINT NumCoeffs;
UINT NumChannels;
UINT TexWidth;
UINT TexHeight;
UINT bIsTex;
UINT NumClusters;
UINT NumPCA;
};
对于 bIsTex 为非零的情况, NumSamples 应等于 TexWidth * TexHeight
。
标头后面的基数据块是 NumCoeffs * NumChannels * (NumPCA + 1) * NumClusters * sizeof(float)
字节。
接下来是 PCA 权重数据块,即 NumPCA * NumSamples * sizeof(float)
字节。
如果 NumClusters 大于 1,则文件以群集 ID 数据块 NumSamples * sizeof(UINT)
字节结束。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|