Что такое X-файл?
Файл с расширением .x относится к устаревшему формату файла 3D-графики DirectX, который был представлен в Microsoft DirectX 2.0. Он использовался для рендеринга 3D-графики в играх и определяет структуры для сеток, текстур, анимации и пользовательских объектов. Он устарел с 2014 года, поскольку формат файла Autodesk FBX лучше подходит как более современный формат. X управляется шаблонами и не требует каких-либо сведений об использовании.
Вы можете открывать файлы DirectX X с помощью Microsoft DirectX и обычных текстовых редакторов.
X-формат файла
Справочник по файлу X содержит справочную информацию об элементах API, которые используются для работать с файлами DirectX .x. Формат предоставляет примитивы данных низкого уровня, которые используются другими приложениями для определения примитивов более высокого уровня с помощью шаблонов данных. DirectX 6.0 представил интерфейсы и методы, которые позволяют читать и записывать файлы .x. DirectX 3.0 представил двоичную версию этого формата файла.
Справочник по формату файла X, определенный DirectX 9, содержит справочную информацию для .x файлы в двоичном, а также текстовом кодировании.
Двоичное кодирование
Двоичный формат определяет формат DirectX X как токенизированное представление текстового формата. Эти токены могут быть автономными для придания грамматической структуры или могут быть токенами с записью, предоставляющими необходимые данные.
Заголовок
Двоичный заголовок можно читать и записывать, используя следующие определения.
#define XOFFILE_FORMAT_MAGIC \
((long)'x' + ((long)'o' << 8) + ((long)'f' << 16) + ((long)' ' << 24))
#define XOFFILE_FORMAT_VERSION \
((long)'0' + ((long)'3' << 8) + ((long)'0' << 16) + ((long)'2' << 24))
#define XOFFILE_FORMAT_BINARY \
((long)'b' + ((long)'i' << 8) + ((long)'n' << 16) + ((long)' ' << 24))
#define XOFFILE_FORMAT_TEXT \
((long)'t' + ((long)'x' << 8) + ((long)'t' << 16) + ((long)' ' << 24))
#define XOFFILE_FORMAT_COMPRESSED \
((long)'c' + ((long)'m' << 8) + ((long)'p' << 16) + ((long)' ' << 24))
#define XOFFILE_FORMAT_FLOAT_BITS_32 \
((long)'0' + ((long)'0' << 8) + ((long)'3' << 16) + ((long)'2' << 24))
#define XOFFILE_FORMAT_FLOAT_BITS_64 \
((long)'0' + ((long)'0' << 8) + ((long)'6' << 16) + ((long)'4' << 24))
Кодировка текста
Файлы DirectX .x не зависят от способа использования файла и не относятся к какому-либо приложению. Такой подход на основе шаблонов позволяет использовать формат файла .x любым клиентским приложением.
Заголовок
Заголовок переменной длины является обязательным и должен находиться в начале потока данных. Заголовок содержит следующие данные.
Тип | Подтип | Размер | Содержание | Содержание Значение |
---|---|---|---|---|
Магический номер (обязательно) | 4 байта | xof | ||
Номер версии (обязательно) | Основной номер | 2 байта | 03 | Основная версия 3 |
Младший номер | 2 байта | 02 | Младшая версия 2 | |
Тип формата (обязательно) | 4 байта | “txt” | Текстовый файл | |
“бункер” | Бинарный файл | |||
“тзип” | Сжатый текстовый файл MSZip | |||
“бзип” | Сжатый двоичный файл MSZip | |||
Размер с плавающей запятой (обязательно) | 4 байта | 0064 | 64-битные числа с плавающей запятой | |
0032 | 32-битные числа с плавающей запятой |