Función D3DXSavePRTCompBufferToFile
Guarda un búfer comprimido de transferencia de radiancia (PRT) comprimido en el disco.
Sintaxis
HRESULT D3DXSavePRTCompBufferToFile(
_In_ LPCSTR pFileName,
_In_ LPD3DXPRTCOMPBUFFER pBuffer
);
Parámetros
pFileName [in]
Tipo: LPCSTR
Nombre del archivo en el que se va a guardar el búfer comprimido.
pBuffer [in]
Tipo: LPD3DXPRTCOMPBUFFER
Dirección de un puntero al objeto ID3DXPRTCompBuffer de entrada.
Valor devuelto
Tipo: HRESULT
Si el método se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto se puede D3DERR_INVALIDCALL.
Observaciones
La configuración del compilador también determina la versión de la función. Si se define Unicode, la llamada de función se resuelve en D3DXSavePRTCompBufferToFileW. De lo contrario, la llamada de función se resuelve en D3DXSavePRTCompBufferToFileA.
El formato de archivo PCA es un archivo binario en forma de encabezado y, a continuación, dos o tres bloques de datos.
struct PRTCompressHeader
{
UINT NumSamples;
UINT NumCoeffs;
UINT NumChannels;
UINT TexWidth;
UINT TexHeight;
UINT bIsTex;
UINT NumClusters;
UINT NumPCA;
};
Para el caso de que bIsTex no sea cero, NumSamples debe ser igual a TexWidth * TexHeight
.
El bloque de datos base que sigue al encabezado es NumCoeffs * NumChannels * (NumPCA + 1) * NumClusters * sizeof(float)
bytes.
A continuación, se muestra el bloque de datos PCA, que es NumPCA * NumSamples * sizeof(float)
bytes.
Si NumClusters es mayor que 1, el archivo termina con el bloque de datos identificadores de clúster de NumSamples * sizeof(UINT)
bytes.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|