Форматы файлов — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Pihan13 (обсуждение | вклад) |
(→.anm, .anms) |
||
(не показаны 10 промежуточные версии 5 участников) | |||
Строка 1: | Строка 1: | ||
==Основные форматы== | ==Основные форматы== | ||
Игра использует различные форматы файлов для своих ресурсов. Разберем их редактирование. | Игра использует различные форматы файлов для своих ресурсов. Разберем их редактирование. | ||
+ | |||
+ | |||
+ | ===Текстовые форматы=== | ||
====.ltx==== | ====.ltx==== | ||
[[Конфиг|Конфигурационный файл]]. | [[Конфиг|Конфигурационный файл]]. | ||
− | Открывается '''Блокнотом''', прост в редактировании. | + | Открывается '''Блокнотом''', прост в редактировании. Синтаксис аналогичен [http://ru.wikipedia.org/wiki/.ini .ini] файлам. |
− | ====.xml==== | + | ====[http://ru.wikipedia.org/wiki/.xml .xml]==== |
− | Обычно используется для хранения текстовых массивов. | + | Обычно используется для хранения текстовых массивов и прочих структурированных данных. |
− | Открывается '''Блокнотом''', но для удобного редактирования с подсветкой разметки лучше использовать | + | Открывается '''Блокнотом''', но для удобного редактирования с подсветкой разметки лучше использовать [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=451 SciTE] или же [http://notepad-plus.sourceforge.net/ru/site.htm Notepad++]. |
====.script==== | ====.script==== | ||
[[Скрипт|Скриптовый файл]]. | [[Скрипт|Скриптовый файл]]. | ||
− | Открывается '''Блокнотом''', но для удобного редактирования с подсветкой разметки лучше использовать | + | Открывается '''Блокнотом''', но для удобного редактирования с подсветкой разметки лучше использовать [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=451 SciTE] или [http://notepad-plus.sourceforge.net/ru/site.htm Notepad++]. Синтаксис аналогичен .lua файлам. |
− | |||
− | |||
− | + | ===Текстуры=== | |
− | + | ====[http://ru.wikipedia.org/wiki/DirectDraw_Surface .dds]==== | |
+ | DirectDraw Surface - формат изображения в DirectX, используется для хранения текстур. | ||
− | + | Редактируется в '''Photoshop''' с установленным [http://developer.nvidia.com/object/photoshop_dds_plugins.html dds-плагином от nVidia] | |
− | + | либо в свободном и бесплатном [http://gimp.org/ GIMP-е] с [http://nifelheim.dyndns.org/~cocidius/dds/ плагином]. | |
− | + | ====[http://ru.wikipedia.org/wiki/Truevision_TGA .tga]==== | |
+ | Truevision TGA (TGA) — растровый графический формат с поддержкой глубины цвета 1—32 бита на пиксель, альфа-каналов, сжатия RLE. | ||
− | + | Используется как исходный формат ("сырые" текстуры), в т.ч. и в альтернативном дереве при работе в Maya. | |
− | + | ||
− | Редактируется через любой звуковой редактор | + | |
+ | ===Звуки/видео=== | ||
+ | |||
+ | ====[http://ru.wikipedia.org/wiki/Theora .ogm]==== | ||
+ | Формат видео, используемый игровым движком. Звуковая дорожка должна идти отдельно, в виде звукового файла формата .ogg (см.ниже). | ||
+ | |||
+ | Редактируется через любой видеоредактор при наличии экспорта в OGV. При отсутствии расширений конвертируется либо [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=393 специальным конвертером], либо [[Создание и конвертирование видеофайлов в игровой формат| при помощи программы VirtualDub]]. | ||
+ | |||
+ | ====[http://ru.wikipedia.org/wiki/Vorbis .ogg]==== | ||
+ | Формат звука, используемый игровым движком. | ||
+ | |||
+ | Редактируется через любой звуковой редактор с поддержкой OGG Vorbis. | ||
+ | |||
+ | ====.wav==== | ||
+ | Исходный формат звука для последующей настройки и конвертации в .ogg с помощью редакторов SDK. | ||
+ | |||
+ | |||
+ | ===Анимация=== | ||
+ | |||
+ | ====.skl, .skls, .omf, .mots (старый формат из 1xxx)==== | ||
+ | Скелетная анимация, в массивах и поодиночке. | ||
+ | |||
+ | ====.anm, .anms==== | ||
+ | Набор координат, который работает в виде анимации движения камеры актера. Используется также для аномалий, которым необходимо задать путь. Редактируется встроенным в LevelEditor [[Создание камеры (катсцены)|редактором]]. | ||
+ | |||
+ | ====.xrdemo==== | ||
+ | Запись облета камеры (демка). Создается в игре (консольная команда [[demo_record]]). | ||
+ | |||
+ | |||
+ | ===Объекты=== | ||
+ | |||
+ | ====.object==== | ||
+ | Формат объектов SDK. | ||
====.ogf==== | ====.ogf==== | ||
− | + | Формат игровых объектов. | |
− | + | Для работы с данными форматами существуют: | |
+ | * [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=393 X-Ray Maya tools] | ||
+ | * [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=404 OGF Viewer] | ||
+ | |||
+ | |||
+ | ==Спавны и графы== | ||
+ | |||
+ | ====.graph==== | ||
+ | Игровой/уровневый граф. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=458 Компилятор/декомпилятор формата] | ||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=457 ggTool] | ||
====.spawn==== | ====.spawn==== | ||
Файл, хранящий данные о [[Спавн|спавне]]. | Файл, хранящий данные о [[Спавн|спавне]]. | ||
− | + | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=455 Компилятор/декомпилятор формата] | |
+ | |||
==Дополнительно== | ==Дополнительно== | ||
− | + | ||
+ | ====.thm==== | ||
+ | Файл содержит описание текстуры/звука. | ||
+ | |||
+ | ====.efd==== | ||
+ | Формат файлов неизвестного пока назначения. Имеет прямое отношение к ИИ. | ||
+ | |||
+ | ====.ppe==== | ||
+ | Формат файлов постпроцесса. | ||
+ | |||
+ | Создаются/редактируются с помощью утилиты PostprocessEditor, входящей в состав [[SP_SDK| SDK 0.7]]. | ||
+ | |||
+ | |||
+ | |||
+ | ==Форматы игровых уровней== | ||
+ | |||
+ | Основа: [http://ru.wikipedia.org/wiki/Interchange_File_Format Interchange File Format]. | ||
+ | Практически все файлы X-Ray используют такую структуру. | ||
+ | |||
+ | Во-вторых, смотрите исходники X-Ray game asset tools. Ни разу не аутентичный источник, но более-менее проверен практикой. | ||
+ | |||
+ | В-третьих, несколько фраз по каждому файлу (по состоянию ЧН). | ||
+ | |||
+ | ====level.==== | ||
+ | IFF-секции верхнего уровня: | ||
+ | |||
+ | * заголовок с версией xrLC и качеством сборки (high/draft/custom); | ||
+ | * таблица пар текстура/engine shader; | ||
+ | * побитая на кусочки и структурированная в виде дерева (-ьев, если есть разбиение на секторы) геометрия. вершин, индексов нет! Только ссылки на level.geom/geomx; | ||
+ | * порталы; | ||
+ | * источники света (преимущественно для R1); | ||
+ | * отблески (glow); | ||
+ | * секторы. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=470 Компилятор/декомпилятор формата] | ||
+ | |||
+ | ====level.cform==== | ||
+ | Геометрия для просчёта коллизий. Немного упрощая: в зависимости от параметров compiler shader берётся подмножество исходной геометрии карты, автоматически огрубляется и сохраняется как набор треугольников с идентификатором материала из gamemtl.xr. | ||
+ | |||
+ | ====level.details==== | ||
+ | Трава. Собственно модели травы/гаек и таблица ячеек. В каждой -- что растёт, как освещено. | ||
+ | |||
+ | ====level.env_mod==== | ||
+ | Локальные модификаторы погоды. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=471 Компилятор/декомпилятор формата] | ||
+ | |||
+ | ====level.fog_vol==== | ||
+ | Объёмный туман. смотрите на DX10 подземку Агропрома или пиар-ролики GSC. | ||
+ | |||
+ | ====level.game==== | ||
+ | Пути и места появления игроков в MP. Но в действительности пути берутся из all.spawn. Избыточный файл. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=456 Компилятор/декомпилятор формата] | ||
+ | |||
+ | ====level.geom==== | ||
+ | В файле три корневые секции: | ||
+ | |||
+ | 1) вершины (позиция, нормали, текстурные координаты и т.п.) в совершенно обычном для D3D9 формате. То есть про SyncData забудьте, но смотрите D3DVERTEXELEMENT9, Vertex Declarations;<br /> | ||
+ | 2) индексы. Опять же, D3D9;<br /> | ||
+ | 3) информация для плавной детализации геометрии (MU-модели). Канонический для используемого алгоритма (SWPM) формат. | ||
+ | |||
+ | ====level.geomx==== | ||
+ | Какая-то избыточная информация для R2/R3. | ||
+ | |||
+ | ====level.hom==== | ||
+ | [[Создаём_HOM,_порталы_и_сектора|Hierarchical Occlusion Mapping]], или маппинг иерархических отсечений. | ||
+ | |||
+ | ====level.ps_static==== | ||
+ | Системы частиц. Мухи, пар из труб и т.д. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=472 Компилятор/декомпилятор формата] | ||
+ | |||
+ | ====level.snd_static==== | ||
+ | Статические точечные источники звука. Озвучка мух и т.п. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=473 Компилятор/декомпилятор формата] | ||
+ | |||
+ | ====level.snd_env==== | ||
+ | Объёмные источники звука. Смотрите Янтарь в ТЧ, например. | ||
+ | |||
+ | ====level.spawn==== | ||
+ | Тут всё понятно. Игрой не учитывается -- ей важно содержимое соответствующей секции all.spawn. '''Поправочка:''' Отсюда игра в MP режиме загружает координаты аномалий, артефактов, респаумных предметов, rpoints | ||
+ | |||
+ | ====level.wallmarks==== | ||
+ | Декали. Кровавые пятна, эмблемы группировок на стенах и т.п. И снова не учитывается, так как декали вшиты в основную геометрию. | ||
+ | |||
+ | ====build.lights==== | ||
+ | Изначально источники света для xrLC. ЧН и ЗП загружают оттуда секцию с hemi-освещением на r2/r3. | ||
+ | |||
+ | ====level.ai==== | ||
+ | Сетка навигации ИИ. | ||
+ | |||
+ | ====level.som==== | ||
+ | Геометрия для просчёта распространения звука. Скажем, просмотр SOM-объектов в LE сразу выявит причину широко известных странностей с музыкой на l05_bar из ТЧ. | ||
+ | |||
+ | |||
+ | |||
+ | ==*.xr файлы== | ||
+ | |||
+ | ====gamemtl.xr==== | ||
+ | Библиотека игровых материалов. Редактируется в ShaderEditor. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=463 Компилятор/декомпилятор] | ||
+ | |||
+ | ====lanims.xr==== | ||
+ | Библиотека световых анимаций. Редактируется встроенным в LevelEditor редактором LightAnimEditor. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=461 Компилятор/декомпилятор] | ||
+ | |||
+ | ====particles.xr==== | ||
+ | Системы частиц. Редактируются в ParticleEditor из состава X-Ray SDK. | ||
+ | |||
+ | ====senvironment.xr==== | ||
+ | Звуковое окружение. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=464 Компилятор/декомпилятор] | ||
+ | |||
+ | ====shaders.xr==== | ||
+ | БД шейдеров, используемых графическим движком. Редактируется в ShaderEditor. | ||
+ | |||
+ | ====shaders_xrlc.xr==== | ||
+ | БД шейдеров, используемых компилятором уровней (xrLC). Редактируется в ShaderEditor. | ||
+ | |||
+ | [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=459 Компилятор/декомпилятор] | ||
+ | |||
==Авторы== | ==Авторы== | ||
Строка 52: | Строка 223: | ||
Статья создана: | Статья создана: | ||
[[Участник:BAC9-FLCL|BAC9-FLCL]] | [[Участник:BAC9-FLCL|BAC9-FLCL]] | ||
+ | |||
+ | Описание игровых форматов: | ||
+ | '''bardak''' | ||
Редактирование: | Редактирование: | ||
[[Участник:Pihan13|Pihan13]] | [[Участник:Pihan13|Pihan13]] |
Текущая версия на 11:10, 3 июля 2014
Содержание
Основные форматы
Игра использует различные форматы файлов для своих ресурсов. Разберем их редактирование.
Текстовые форматы
.ltx
Открывается Блокнотом, прост в редактировании. Синтаксис аналогичен .ini файлам.
.xml
Обычно используется для хранения текстовых массивов и прочих структурированных данных.
Открывается Блокнотом, но для удобного редактирования с подсветкой разметки лучше использовать SciTE или же Notepad++.
.script
Открывается Блокнотом, но для удобного редактирования с подсветкой разметки лучше использовать SciTE или Notepad++. Синтаксис аналогичен .lua файлам.
Текстуры
.dds
DirectDraw Surface - формат изображения в DirectX, используется для хранения текстур.
Редактируется в Photoshop с установленным dds-плагином от nVidia либо в свободном и бесплатном GIMP-е с плагином.
.tga
Truevision TGA (TGA) — растровый графический формат с поддержкой глубины цвета 1—32 бита на пиксель, альфа-каналов, сжатия RLE.
Используется как исходный формат ("сырые" текстуры), в т.ч. и в альтернативном дереве при работе в Maya.
Звуки/видео
.ogm
Формат видео, используемый игровым движком. Звуковая дорожка должна идти отдельно, в виде звукового файла формата .ogg (см.ниже).
Редактируется через любой видеоредактор при наличии экспорта в OGV. При отсутствии расширений конвертируется либо специальным конвертером, либо при помощи программы VirtualDub.
.ogg
Формат звука, используемый игровым движком.
Редактируется через любой звуковой редактор с поддержкой OGG Vorbis.
.wav
Исходный формат звука для последующей настройки и конвертации в .ogg с помощью редакторов SDK.
Анимация
.skl, .skls, .omf, .mots (старый формат из 1xxx)
Скелетная анимация, в массивах и поодиночке.
.anm, .anms
Набор координат, который работает в виде анимации движения камеры актера. Используется также для аномалий, которым необходимо задать путь. Редактируется встроенным в LevelEditor редактором.
.xrdemo
Запись облета камеры (демка). Создается в игре (консольная команда demo_record).
Объекты
.object
Формат объектов SDK.
.ogf
Формат игровых объектов.
Для работы с данными форматами существуют:
Спавны и графы
.graph
Игровой/уровневый граф.
Компилятор/декомпилятор формата ggTool
.spawn
Файл, хранящий данные о спавне.
Компилятор/декомпилятор формата
Дополнительно
.thm
Файл содержит описание текстуры/звука.
.efd
Формат файлов неизвестного пока назначения. Имеет прямое отношение к ИИ.
.ppe
Формат файлов постпроцесса.
Создаются/редактируются с помощью утилиты PostprocessEditor, входящей в состав SDK 0.7.
Форматы игровых уровней
Основа: Interchange File Format. Практически все файлы X-Ray используют такую структуру.
Во-вторых, смотрите исходники X-Ray game asset tools. Ни разу не аутентичный источник, но более-менее проверен практикой.
В-третьих, несколько фраз по каждому файлу (по состоянию ЧН).
level.
IFF-секции верхнего уровня:
- заголовок с версией xrLC и качеством сборки (high/draft/custom);
- таблица пар текстура/engine shader;
- побитая на кусочки и структурированная в виде дерева (-ьев, если есть разбиение на секторы) геометрия. вершин, индексов нет! Только ссылки на level.geom/geomx;
- порталы;
- источники света (преимущественно для R1);
- отблески (glow);
- секторы.
Компилятор/декомпилятор формата
level.cform
Геометрия для просчёта коллизий. Немного упрощая: в зависимости от параметров compiler shader берётся подмножество исходной геометрии карты, автоматически огрубляется и сохраняется как набор треугольников с идентификатором материала из gamemtl.xr.
level.details
Трава. Собственно модели травы/гаек и таблица ячеек. В каждой -- что растёт, как освещено.
level.env_mod
Локальные модификаторы погоды.
Компилятор/декомпилятор формата
level.fog_vol
Объёмный туман. смотрите на DX10 подземку Агропрома или пиар-ролики GSC.
level.game
Пути и места появления игроков в MP. Но в действительности пути берутся из all.spawn. Избыточный файл.
Компилятор/декомпилятор формата
level.geom
В файле три корневые секции:
1) вершины (позиция, нормали, текстурные координаты и т.п.) в совершенно обычном для D3D9 формате. То есть про SyncData забудьте, но смотрите D3DVERTEXELEMENT9, Vertex Declarations;
2) индексы. Опять же, D3D9;
3) информация для плавной детализации геометрии (MU-модели). Канонический для используемого алгоритма (SWPM) формат.
level.geomx
Какая-то избыточная информация для R2/R3.
level.hom
Hierarchical Occlusion Mapping, или маппинг иерархических отсечений.
level.ps_static
Системы частиц. Мухи, пар из труб и т.д.
Компилятор/декомпилятор формата
level.snd_static
Статические точечные источники звука. Озвучка мух и т.п.
Компилятор/декомпилятор формата
level.snd_env
Объёмные источники звука. Смотрите Янтарь в ТЧ, например.
level.spawn
Тут всё понятно. Игрой не учитывается -- ей важно содержимое соответствующей секции all.spawn. Поправочка: Отсюда игра в MP режиме загружает координаты аномалий, артефактов, респаумных предметов, rpoints
level.wallmarks
Декали. Кровавые пятна, эмблемы группировок на стенах и т.п. И снова не учитывается, так как декали вшиты в основную геометрию.
build.lights
Изначально источники света для xrLC. ЧН и ЗП загружают оттуда секцию с hemi-освещением на r2/r3.
level.ai
Сетка навигации ИИ.
level.som
Геометрия для просчёта распространения звука. Скажем, просмотр SOM-объектов в LE сразу выявит причину широко известных странностей с музыкой на l05_bar из ТЧ.
*.xr файлы
gamemtl.xr
Библиотека игровых материалов. Редактируется в ShaderEditor.
lanims.xr
Библиотека световых анимаций. Редактируется встроенным в LevelEditor редактором LightAnimEditor.
particles.xr
Системы частиц. Редактируются в ParticleEditor из состава X-Ray SDK.
senvironment.xr
Звуковое окружение.
shaders.xr
БД шейдеров, используемых графическим движком. Редактируется в ShaderEditor.
shaders_xrlc.xr
БД шейдеров, используемых компилятором уровней (xrLC). Редактируется в ShaderEditor.
Авторы
Статья создана: BAC9-FLCL
Описание игровых форматов: bardak
Редактирование: Pihan13