VTFX file format: Difference between revisions
Kat.swales (talk | contribs) mNo edit summary |
Kat.swales (talk | contribs) mNo edit summary |
||
Line 5: | Line 5: | ||
=== VTFX header === | === VTFX header === | ||
##define VTF_X360_MAJOR_VERSION 0x0360 | |||
##define VTF_X360_MINOR_VERSION 8 | |||
struct VTFFileHeaderX360_t | struct VTFFileHeaderX360_t | ||
{ | { | ||
char fileTypeString[4]; // VTFX | char fileTypeString[4]; // VTFX. | ||
int version[2]; // version[0].version[1] | int version[2]; // version[0].version[1]. | ||
int headerSize; | int headerSize; | ||
unsigned int flags; | unsigned int flags; | ||
unsigned short width; // actual width of data in file | unsigned short width; // actual width of data in file. | ||
unsigned short height; // actual height of data in file | unsigned short height; // actual height of data in file. | ||
unsigned short depth; // actual depth of data in file | unsigned short depth; // actual depth of data in file. | ||
unsigned short numFrames; | unsigned short numFrames; | ||
unsigned short preloadDataSize; // exact size of preload data (may extend into image!) | unsigned short preloadDataSize; // exact size of preload data (may extend into image!). | ||
unsigned char mipSkipCount; // used to resconstruct mapping dimensions | unsigned char mipSkipCount; // used to resconstruct mapping dimensions. | ||
unsigned char numResources; | unsigned char numResources; | ||
Vector reflectivity; // Resides on 16 byte boundary! | Vector reflectivity; // Resides on 16 byte boundary!. | ||
float bumpScale; | float bumpScale; | ||
ImageFormat imageFormat; | ImageFormat imageFormat; |
Revision as of 06:42, 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]; };