Что такое формат файла X?
Файлы с расширением .x относятся к категории 3D-моделей, созданных для компонента Microsoft Direct3D в DirectX, впервые представленного во второй половине 1990-х годов.
Содержимое файлов .x включает данные о трёхмерных объектах. Они используются средой Microsoft DirectX, которая обеспечивает отображение и анимацию 3D-объектов. Ключевой особенностью формата является наличие двух взаимозаменяемых кодировок - читаемого человеком ASCII-текста и компактного токенизированного двоичного формата - обе используют одно и то же расширение .x и открываются по четырёхбайтной магической подписи xof . Файлы хранят всю информацию, необходимую для представления 3D-контента, среди которой можно найти:
- спецификации меша объекта (вершины и грани),
- координаты текстур и ссылки на внешние файлы текстурных изображений,
- правила рендеринга и свойства материалов,
- иерархии фреймов и движения и анимации твёрдых тел.
Содержимое файлов .x используется средой Microsoft DirectX, например, в компьютерных играх. Это позволяет создавать реалистичные виртуальные миры, в которых перемещается персонаж игрока. Объекты, хранящиеся в файлах .x, являются элементами трёхмерной сцены. Их также можно открыть в популярных программах для редактирования и создания 3D-графики, таких как Blender. Однако, чтобы импортировать файлы .x в приложения, такие как 3ds Max или Maya, их содержимое необходимо сначала обработать с помощью специализированных плагинов среды Microsoft DirectX.
Microsoft официально признала формат .x устаревшим около 2014 года, рекомендуя .FBX или .glTF для новых проектов. Формат всё ещё широко распространён в архивах старых DirectX-игр и сообществах моддинга.
Безопасность и защита
РИСК: LOWФайл DirectX .x содержит пассивную геометрию/данные материалов и не выполняет код, поэтому он не является типичным вектором вредоносного ПО. Реалистичные риски носят практический характер: текстуры ссылаются по имени файла, поэтому модель может выглядеть без текстур, если её файлы изображений отсутствуют; формат устарел, поэтому некоторым современным инструментам требуется дополнение или конвертер. Будьте осторожны с сайтами загрузки поддельных 'просмотрщиков X-файлов', которые распространяют рекламное ПО - используйте Blender или Assimp, которые являются открытым исходным кодом и бесплатными.
Детали формата
в двух словах- Универсальный/временный файл-заглушка - Чистый '.x' иногда используется как временный расширение скриптами или резервными копиями; содержимое варьируется и не связано с DirectX.
- Исходный код лексического анализатора (редко) - Некоторые цепочки инструментов помечают исходный код лексера Lex/Flex как '.x'; это обычный текст, похожий на C, открывается в редакторе кода - см. db_audit_notes.
Программы, открывающие файлы X
Технические подробности
глубокая спецификация| Разработчик | Microsoft |
| Тип формата | Шаблонно-ориентированный 3D-файл модели и сцены |
| MIME-тип | application/x-directx |
| Кодировка | ASCII-текст или токенизированный бинарный - оба варианта используют расширение .x; кодировка объявлена в 16-байтном заголовке файла |
| Магическая подпись файла | "xof " (hex 78 6F 66 20) по смещению байта 0 - присутствует во всех вариантах .x |
| Структура заголовка | 16-байтный заголовок: байты 0-3 "xof ", 4-7 версия (например, "0303"), 8-11 токен формата ("txt "/"bin "/"tzip"/"bzip"), 12-15 размер float ("0032" или "0064") |
| Точность float | 32-бит или 64-бит, объявлена в заголовке как "0032" или "0064" |
| Порядок байтов | Little-endian (вариант бинарного) |
| Контейнер шаблонов | Система шаблонов XOF - именованные расширяемые объекты данных; поддерживает пользовательские шаблоны, определяемые приложением |
| Сжатие | Отсутствует для текстовых (txt) и бинарных (bin) вариантов; необязательное сжатие MSZip в вариантах tzip и bzip |
| Основные объекты данных | Mesh, MeshNormals, MeshTextureCoords, Material, Frame, AnimationSet |
| Обработка текстур | Текстуры ссылаются только по имени файла - не встраиваются внутрь файла .x |
| Типичный размер файла | 10 КБ - 50 МБ, в зависимости от сложности меша, данных анимации и количества объектов |
| Основная платформа | Windows (Direct3D / DirectX runtime) |
| Форматы-преемники | Autodesk FBX и Khronos glTF/GLB - Microsoft официально признала .x и утилиты мешей D3DX устаревшими около 2014 года |
| Выпущен | 1996 (DirectX 2.0); binary variant added in DirectX 3.0 |
| Последняя версия | Last revised for Direct3D 9; deprecated by Microsoft from 2014 (use FBX/glTF instead) |
| Спецификация | learn.microsoft.com |
Конвертации X
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах X.