XNA Game Studio 4.0 XNB: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks |
imported>Ikskoks |
||
| Line 11: | Line 11: | ||
<pre> | <pre> | ||
// XNB file format | // XNB file format | ||
// little endian | |||
//header | |||
3 bytes (char) - signature // "XNB" | 3 bytes (char) - signature // "XNB" | ||
1 byte (char) - target platform // "w" - Microsoft Windows | 1 byte (char) - target platform // "w" - Microsoft Windows | ||
| Line 20: | Line 22: | ||
// bit 0x80 - asset data is compressed | // bit 0x80 - asset data is compressed | ||
4 bytes (uint32) - total file size | 4 bytes (uint32) - total file size | ||
if compressed_flag == True: | if compressed_flag == True: | ||
4 bytes (uint32) - uncompressed file size | 4 bytes (uint32) - uncompressed file size | ||
// Note: If the file is compressed (flag bit 0x80 is set), data from this point on | // Note: If the file is compressed (flag bit 0x80 is set), data from this point on | ||
// is packed using the Xbox XMemCompress API | // is packed using the Xbox XMemCompress API | ||
// type manifest | |||
7BitEncodedInt - type reader count | 7BitEncodedInt - type reader count | ||
type_reader_count * | type_reader_count * | ||
{ | { | ||
x bytes (char) - type reader name | 7BitEncodedInt - string length | ||
4 bytes (int32) - reader version number | x bytes (char) - type reader name // e.g. "Microsoft.Xna.Framework.Content..." | ||
4 bytes (int32) - reader version number // e.g. 0 | |||
} | } | ||
Revision as of 14:13, 16 September 2021
Back to index | Edit this page
XNB
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// XNB file format
// little endian
//header
3 bytes (char) - signature // "XNB"
1 byte (char) - target platform // "w" - Microsoft Windows
// "m" - Windows Phone 7
// "x" - XBOX 360
1 byte (uint8) - XNB format version // 5 = XNA Game Studio 4.0
1 byte (uint8) - flags // bit 0x01 - content is for HiDef profile (otherwise Reach)
// bit 0x80 - asset data is compressed
4 bytes (uint32) - total file size
if compressed_flag == True:
4 bytes (uint32) - uncompressed file size
// Note: If the file is compressed (flag bit 0x80 is set), data from this point on
// is packed using the Xbox XMemCompress API
// type manifest
7BitEncodedInt - type reader count
type_reader_count *
{
7BitEncodedInt - string length
x bytes (char) - type reader name // e.g. "Microsoft.Xna.Framework.Content..."
4 bytes (int32) - reader version number // e.g. 0
}
7BitEncodedInt - shared resource count
x bytes - primary asset data
shared_resource_count *
{
x bytes - shared resource data
}
MultiEx BMS Script
Not written yet.
QuickBMS Script
Notes and Comments
None.
Games
List of games using this file format:
- Bloody Trapland (PC) (*.XNB)
- Plants vs zombies (for Windows Phone 7)
- Many more...
Compatible Programs
See Also