VTFX file format: Difference between revisions
(Created page with '{{stub}} VTFx is a file format used by Valve to store textures on the Xbox 360. It has a different header from normal VTF files and stores raw image data in an LZMA compressed Di…') |
Kat.swales (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
{{stub}} | {{stub}} | ||
VTFx is a file format used by Valve to store textures on the Xbox 360. It has a different header from normal VTF files and stores | VTFx is a file format used by Valve to store textures on the Xbox 360. | ||
It has a different header from normal VTF files and stores it's data in a compressed DirectDraw Surface. | |||
Conversion or reading from a VTFX file is not possible at this time. | |||
=== VTFX header === | |||
#define VTF_X360_MAJOR_VERSION 0x0360 | |||
#define VTF_X360_MINOR_VERSION 8 | |||
struct VTFFileHeaderX360_t | |||
{ | |||
char fileTypeString[4]; // VTFX | |||
int version[2]; // version[0].version[1] | |||
int headerSize; | |||
unsigned int flags; | |||
unsigned short width; // actual width of data in file | |||
unsigned short height; // actual height of data in file | |||
unsigned short depth; // actual depth of data in file | |||
unsigned short numFrames; | |||
unsigned short preloadDataSize; // exact size of preload data (may extend into image!) | |||
unsigned char mipSkipCount; // used to resconstruct mapping dimensions | |||
unsigned char numResources; | |||
Vector reflectivity; // Resides on 16 byte boundary! | |||
float bumpScale; | |||
ImageFormat imageFormat; | |||
unsigned char lowResImageSample[4]; | |||
unsigned int compressedSize; | |||
// *** followed by *** ResourceEntryInfo resources[0]; | |||
}; |
Revision as of 06:40, 23 August 2009
VTFx is a file format used by Valve to store textures on the Xbox 360. It has a different header from normal VTF files and stores it's data in a compressed DirectDraw Surface. Conversion or reading from a VTFX file is not possible at this time.
VTFX header
- define VTF_X360_MAJOR_VERSION 0x0360
- define VTF_X360_MINOR_VERSION 8
struct VTFFileHeaderX360_t { char fileTypeString[4]; // VTFX int version[2]; // version[0].version[1] int headerSize; unsigned int flags; unsigned short width; // actual width of data in file unsigned short height; // actual height of data in file unsigned short depth; // actual depth of data in file unsigned short numFrames; unsigned short preloadDataSize; // exact size of preload data (may extend into image!) unsigned char mipSkipCount; // used to resconstruct mapping dimensions unsigned char numResources; Vector reflectivity; // Resides on 16 byte boundary! float bumpScale; ImageFormat imageFormat; unsigned char lowResImageSample[4]; unsigned int compressedSize;
// *** followed by *** ResourceEntryInfo resources[0]; };