Level.hom — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Pavel (обсуждение | вклад) (→Версии) |
Pavel (обсуждение | вклад) (→Блоки) |
||
Строка 16: | Строка 16: | ||
== Блоки == | == Блоки == | ||
− | Состоит из двух блоков | + | Состоит из двух блоков: |
− | + | {| class="standard" | |
− | + | |- | |
− | 0x1 - | + | !Идентификатор блока||Размер (в байтах)||Описание |
+ | |- | ||
+ | |0x0||4||заголовок (содержит информацию о версии формата) | ||
+ | |- | ||
+ | |0x1||количество полигонов * 40||координаты вершин и свойства полигонов | ||
+ | |- | ||
+ | |} | ||
Структура файла схожа с *.som | Структура файла схожа с *.som | ||
− | |||
== Описание блоков == | == Описание блоков == |
Версия 16:41, 18 декабря 2016
Описание
HOM - отсекатель геометрии.
Является мешем.
Нужен для увеличения производительности.
Создаётся данный файл при компиляции уровня (если в СДК были расставлены HOM объекты).
Сохраняется в папку gamedata\levels\имя_уровня\level.hom
Версии
Не менялся формат с самой первой версии.
С билда 1154 до Зова Припяти версия равна 0.
Блоки
Состоит из двух блоков:
Идентификатор блока | Размер (в байтах) | Описание |
---|---|---|
0x0 | 4 | заголовок (содержит информацию о версии формата) |
0x1 | количество полигонов * 40 | координаты вершин и свойства полигонов |
Структура файла схожа с *.som
Описание блоков
Блок 0x0
Размер блока равен 4 байтам. Данный блок хранит одно 4 байтовое число, которое указывает версию формата. Во всех файлах 0x0.
Блок 0x1
Данные меша. Здесь хранятся координаты вершин и опция 2 sided. Количество вершин кратно трём. Опция - 4 байтовое целое число. Возможные значения: 0x0, 0x1
Индексы полигонов не сохраняются, но их легко можно сгенерировать, так как все вершины сохранены так, что индексы полигонов расположены в порядке возрастания. Первый треугольник будет таким: 0, 1, 2, второй: 3, 4, 5, третий: 6, 7, 8 и т.д.
Один полигон хранится в 40 байтах.
Информация о формате взята из xray_re-tools-src