Level.hom — S.T.A.L.K.E.R. Inside Wiki

Level.hom

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

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

Описание

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

Участник: Pavel

Другие места
LANGUAGE