Level.som — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Pavel (обсуждение | вклад) м (Pavel переименовал страницу Формат файлов *.som в Level.som) |
Pavel (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | == Описание == | + | Перед прочтением данной статьи, прочтите эту статью: <br>[[Бинарные файлы]] |
− | + | ||
− | себя меш. Находятся эти файлы в gamedata\levels\имя_уровня\level.som | + | ==Описание== |
+ | SOM - sound occluder mesh. | ||
+ | |||
+ | Отсекает громкость звука на уровне. | ||
+ | |||
+ | Представляет из себя меш. | ||
+ | |||
+ | Находятся эти файлы в gamedata\levels\имя_уровня\level.som | ||
+ | |||
Используется для того, чтобы сквозь стены, потолки, полы и т.д. звук проходил с разной силой. | Используется для того, чтобы сквозь стены, потолки, полы и т.д. звук проходил с разной силой. | ||
− | == Версии == | + | ==Версии== |
− | + | ||
Билды 749-2008 - отсутствует | Билды 749-2008 - отсутствует | ||
Строка 11: | Строка 18: | ||
Билд 2205-ЗП - 0 | Билд 2205-ЗП - 0 | ||
− | == Блоки == | + | ==Блоки== |
Состоит из двух блоков: | Состоит из двух блоков: | ||
− | 0x0 - версия формата | + | {| class="standard" |
+ | |- | ||
+ | !Идентификатор блока||Размер (в байтах)||Описание | ||
+ | |- | ||
+ | |0x0||4||заголовок (содержит информацию о версии формата) | ||
+ | |- | ||
+ | |0x1||количество полигонов * 44||координаты вершин и свойства полигонов | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Структура файла схожа с *.hom | ||
+ | |||
+ | ==Описание блоков== | ||
+ | ===Блок 0x0 (заголовок)=== | ||
+ | {| class="standard" | ||
+ | |- | ||
+ | !Тип||Описание | ||
+ | |- | ||
+ | |I||версия формата | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | ===Блок 0x1 (данные меша)=== | ||
+ | {| class="standard" | ||
+ | |- | ||
+ | !Тип||Описание | ||
+ | |- | ||
+ | |fff||3D координаты первой вершины треугольника | ||
+ | |- | ||
+ | |fff||3D координаты второй вершины треугольника | ||
+ | |- | ||
+ | |fff||3D координаты третьей вершины треугольника | ||
+ | |- | ||
+ | |I||опция "two sided" | ||
+ | |- | ||
+ | |f||параметр "Sound Occlusion" | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Возможные значения опции "two sided": 0x0, 0x1. | ||
+ | |||
+ | Если 0x1, то полигон будет отсекать звук с двух сторон, а если 0x0, то только с лицевой. | ||
− | + | Параметр "Sound Occlusion" указывает, какая доля громкости звука будет слышна. | |
− | + | Значение зависит от материала объекта SOM до компиляции. | |
− | + | ||
− | + | ||
− | + | Величина данного параметра прописана в материалах и находится в Shader Editor>Material>Item Properties>Factors>Sound Occlusion. | |
− | + | ||
− | + | Возможные значения 0.0 - 1.0 | |
− | + | Индексы полигонов не сохраняются, но их легко можно сгенерировать, так как все вершины сохранены так, что индексы полигонов расположены в порядке возрастания. | |
− | + | ||
− | + | ||
− | + | Первый треугольник будет таким: 0, 1, 2, второй: 3, 4, 5, третий: 6, 7, 8 и т.д. | |
[[Участник: Pavel]] | [[Участник: Pavel]] | ||
[[Категория:Форматы файлов]] | [[Категория:Форматы файлов]] |
Версия 17:01, 18 декабря 2016
Перед прочтением данной статьи, прочтите эту статью:
Бинарные файлы
Содержание
Описание
SOM - sound occluder mesh.
Отсекает громкость звука на уровне.
Представляет из себя меш.
Находятся эти файлы в gamedata\levels\имя_уровня\level.som
Используется для того, чтобы сквозь стены, потолки, полы и т.д. звук проходил с разной силой.
Версии
Билды 749-2008 - отсутствует
Билд 2205-ЗП - 0
Блоки
Состоит из двух блоков:
Идентификатор блока | Размер (в байтах) | Описание |
---|---|---|
0x0 | 4 | заголовок (содержит информацию о версии формата) |
0x1 | количество полигонов * 44 | координаты вершин и свойства полигонов |
Структура файла схожа с *.hom
Описание блоков
Блок 0x0 (заголовок)
Тип | Описание |
---|---|
I | версия формата |
Блок 0x1 (данные меша)
Тип | Описание |
---|---|
fff | 3D координаты первой вершины треугольника |
fff | 3D координаты второй вершины треугольника |
fff | 3D координаты третьей вершины треугольника |
I | опция "two sided" |
f | параметр "Sound Occlusion" |
Возможные значения опции "two sided": 0x0, 0x1.
Если 0x1, то полигон будет отсекать звук с двух сторон, а если 0x0, то только с лицевой.
Параметр "Sound Occlusion" указывает, какая доля громкости звука будет слышна.
Значение зависит от материала объекта SOM до компиляции.
Величина данного параметра прописана в материалах и находится в Shader Editor>Material>Item Properties>Factors>Sound Occlusion.
Возможные значения 0.0 - 1.0
Индексы полигонов не сохраняются, но их легко можно сгенерировать, так как все вершины сохранены так, что индексы полигонов расположены в порядке возрастания.
Первый треугольник будет таким: 0, 1, 2, второй: 3, 4, 5, третий: 6, 7, 8 и т.д.