Обсуждение участника:Excid — S.T.A.L.K.E.R. Inside Wiki

Обсуждение участника:Excid

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск

Формат разобрал excid

О формате

Формат *.object используется в качестве основного формата хранения моделей на этапе редактирования (включая экспорт из Maya или 3ds Max и хранение моделей до компиляции уровня)

Описание структуры

Формат бинарный. Файл состоит из вложенных друг в друга блоков. Весь файл представляет собой единый блок.

Структура блока

Блок имеет 3 обязательные части:

Часть Тип(размер) Подробнее
Идентификатор типа блока (4) 2 байта идентификатора и 2 нулевых байта
Размер блока uint(4) без учета этих частей — только то, что идет дальше
Данные (Размер блока) Данные могут быть представлены вложенными блоками

Типы данных

Особое внимание стоит обратить на то, как хранятся строки: они нуль-терминальные, то есть в конце обязательно содержат нулевой байт.

Структура

В заголовке последующих пунктов в скобках содержатся идентификаторы типа блока в шестнадцатиричной форме, при этом байты представлены в обратном порядке (то есть так, как числа задаются в исходниках), поэтому идентификатор 0x0912 в файле будет выглядеть как 09 12 00 00.

Файл (0x7777)

Неизвестные данные (0x0900)

Возможно, это версия.

Название Тип(размер) Значение Подробнее
Неизвестно (2) 0x10

Пользовательские информация - User Data (0x0912)

Название Тип(размер) Значение Подробнее
Данные строка Произвольная строка

В редакторе Game options > User Data.

Уровень детализации - LOD (0x0925)

Название Тип(размер) Значение Подробнее
Ссылка строка Путь к модели, содержащей следующий уровень детализации

В редакторе LOD > Reference.

Тип модели - LOD (0x0925)

Название Тип(размер) Значение Подробнее
Ссылка строка Путь к модели, содержащей следующий уровень детализации
Другие места
LANGUAGE