D3DXSavePRTCompBufferToFile-Funktion
Speichert einen komprimierten PRT-Puffer (Precomputed Radiance Transfer) auf den Datenträger.
Syntax
HRESULT D3DXSavePRTCompBufferToFile(
_In_ LPCSTR pFileName,
_In_ LPD3DXPRTCOMPBUFFER pBuffer
);
Parameter
pFileName [ In]
Typ: LPCSTR
Name der Datei, in der der komprimierte Puffer gespeichert werden soll.
pBuffer [ In]
Typ: LPD3DXPRTCOMPBUFFER
Adresse eines Zeigers auf das Eingabeobjekt ID3DXPRTCompBuffer.
Rückgabewert
Typ: HRESULT
Wenn die Methode erfolgreich ist, ist der Rückgabewert D3D _ OK. Wenn die Methode fehlschlägt, kann der Rückgabewert D3DERR _ INVALIDCALL sein.
Hinweise
Die Compilereinstellung bestimmt auch die Funktionsversion. Wenn Unicode definiert ist, wird der Funktionsaufruf in D3DXSavePRTCompBufferToFileW auflösen. Andernfalls wird der Funktionsaufruf in D3DXSavePRTCompBufferToFileA auflösen.
Das PCA-Dateiformat ist eine Binärdatei in Form eines Headers und dann zwei oder drei Datenblöcke.
struct PRTCompressHeader
{
UINT NumSamples;
UINT NumCoeffs;
UINT NumChannels;
UINT TexWidth;
UINT TexHeight;
UINT bIsTex;
UINT NumClusters;
UINT NumPCA;
};
Wenn bIsTex nicht 0 (null) ist, sollte NumSamples gleich TexWidth * TexHeight sein.
Der Basisdatenblock, der dem Header folgt, ist NumCoeffs * NumChannels * (NumPCA + 1) * NumClusters * sizeof(float) bytes.
Im Anschluss folgt der PCA-Gewichtungsdatenblock, der Bytes NumPCA * NumSamples * sizeof(float) ist.
Wenn NumClusters größer als 1 ist, endet die Datei mit dem Cluster-IDs-Datenblock von NumSamples * sizeof(UINT) Bytes.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|
Siehe auch
Vorausberechnungsfunktionen für die Übertragung von Radiance