Формат файлов *.dm — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Pavel (обсуждение | вклад) (→Ссылки) |
Pavel (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| + | Перед прочтением данной статьи, прочтите эту статью: <br>[[Бинарные файлы]] | ||
| + | |||
== Описание == | == Описание == | ||
| − | Файлы формата dm (Detail Mesh) - это трёхмерные модели для эффектов погоды. | + | Файлы формата *.dm (Detail Mesh) - это трёхмерные модели для эффектов погоды и для детальных объектов уровня. |
| − | К ним относятся капли дождя | + | |
| − | + | К ним относятся капли дождя, вспышки молний (папка meshes\dm). | |
| + | В файлах level.details в этом формате хранятся трава, листья, гайки, болты и т. д. | ||
== Структура файла == | == Структура файла == | ||
| Строка 30: | Строка 33: | ||
== Описание структуры == | == Описание структуры == | ||
| − | |||
| − | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |имя шейдера|| | + | |имя шейдера||s |
|} | |} | ||
| − | + | Строка, которая указывает имя шейдера из файла shaders.xr | |
| − | + | ||
| + | Пример: effects\lightning0x00 | ||
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |имя текстуры|| | + | |имя текстуры||s |
|} | |} | ||
| − | + | Строка, которая указывает путь и имя текстуры. | |
| + | |||
| + | Пример: fx\fx_rainsplash10x00 | ||
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |флаги|| | + | |флаги||I |
|} | |} | ||
| − | + | Это опции. | |
| + | |||
| + | Используется в файле level.details. | ||
| + | |||
| + | Если 0x0, то меши растительности колыхаются от ветра (кусты), а если 0x1, то неподвижны (листья). | ||
| + | |||
| + | В LE эти опции находятся в Detail Objects > Detail List > No Waving | ||
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |минимальный размер|| | + | |минимальный размер||f |
|} | |} | ||
| − | + | Минимальный размер модели. | |
| + | |||
| + | Эти значения используются в файлах level.details | ||
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |максимальный размер|| | + | |максимальный размер||f |
|} | |} | ||
| − | + | Максимальный размер модели. | |
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |количество вершин|| | + | |количество вершин||I |
|} | |} | ||
| − | + | Количество вершин в меше. | |
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | |количество индексов|| | + | |количество индексов||I |
|} | |} | ||
| − | + | Количество индексов по которым строятся треугольники. | |
| + | |||
| + | === Вершины === | ||
| + | |||
| + | Вершины хранятся последовательно. | ||
| + | |||
| + | Структура одной вершины: | ||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
| − | + | ||
| − | + | ||
|- | |- | ||
| − | | | + | |3D координата x||f |
|- | |- | ||
| − | | | + | |3D координата y||f |
|- | |- | ||
| − | | | + | |3D координата z||f |
|- | |- | ||
| − | | | + | |текстурная координата u||f |
|- | |- | ||
| − | |текстурная координата | + | |текстурная координата v||f |
|- | |- | ||
| − | |||
| − | |||
| − | |||
|} | |} | ||
| − | + | ||
| + | === Индексы === | ||
| + | Индексы вершин по которым образуются треугольники. | ||
| + | |||
| + | Индексы хранятся последовательно. | ||
| + | |||
| + | Структура индекса: | ||
| + | |||
{| class="standard" | {| class="standard" | ||
|- | |- | ||
| − | !Данные | + | !Данные||Тип |
|- | |- | ||
| − | | | + | |индекс вершины||H |
|- | |- | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
|} | |} | ||
| − | |||
== Ссылки == | == Ссылки == | ||
Версия 17:19, 18 декабря 2016
Перед прочтением данной статьи, прочтите эту статью:
Бинарные файлы
Описание
Файлы формата *.dm (Detail Mesh) - это трёхмерные модели для эффектов погоды и для детальных объектов уровня.
К ним относятся капли дождя, вспышки молний (папка meshes\dm).
В файлах level.details в этом формате хранятся трава, листья, гайки, болты и т. д.
Структура файла
| Данные |
|---|
| имя шейдера |
| имя текстуры |
| флаги |
| минимальный размер |
| максимальный размер |
| количество вершин |
| количество индексов |
| вершины |
| индексы |
Описание структуры
| Данные | Тип |
|---|---|
| имя шейдера | s |
Строка, которая указывает имя шейдера из файла shaders.xr
Пример: effects\lightning0x00
| Данные | Тип |
|---|---|
| имя текстуры | s |
Строка, которая указывает путь и имя текстуры.
Пример: fx\fx_rainsplash10x00
| Данные | Тип |
|---|---|
| флаги | I |
Это опции.
Используется в файле level.details.
Если 0x0, то меши растительности колыхаются от ветра (кусты), а если 0x1, то неподвижны (листья).
В LE эти опции находятся в Detail Objects > Detail List > No Waving
| Данные | Тип |
|---|---|
| минимальный размер | f |
Минимальный размер модели.
Эти значения используются в файлах level.details
| Данные | Тип |
|---|---|
| максимальный размер | f |
Максимальный размер модели.
| Данные | Тип |
|---|---|
| количество вершин | I |
Количество вершин в меше.
| Данные | Тип |
|---|---|
| количество индексов | I |
Количество индексов по которым строятся треугольники.
Вершины
Вершины хранятся последовательно.
Структура одной вершины:
| Данные | Тип |
|---|---|
| 3D координата x | f |
| 3D координата y | f |
| 3D координата z | f |
| текстурная координата u | f |
| текстурная координата v | f |
Индексы
Индексы вершин по которым образуются треугольники.
Индексы хранятся последовательно.
Структура индекса:
| Данные | Тип |
|---|---|
| индекс вершины | H |
Ссылки
Утилиты так или иначе связанные с импортом\экспортом dm:
- Blender X-Ray Engine Tools от igelbox
- Blender Stalker Dm Err (Addon для Blender) от Pavel_Blend