Формат файлов *.dm — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Pavel (обсуждение | вклад) (→Вершины) |
Pavel (обсуждение | вклад) |
||
(не показаны 2 промежуточных версий 1 участника) | |||
Строка 126: | Строка 126: | ||
На вершины накладываются ограничения: | На вершины накладываются ограничения: | ||
− | 1. Одна | + | 1. Одна вершина может иметь только одну текстурную координату. |
При сохранении модели в *.dm, вершина, имеющая две (и более) текстурных координат, преобразуются в две (и более) вершины. | При сохранении модели в *.dm, вершина, имеющая две (и более) текстурных координат, преобразуются в две (и более) вершины. | ||
− | 2. Их количество должно быть не больше 65536, так как их индексы в треугольниках хранятся в 2 байтах | + | 2. Их количество должно быть не больше 65536, так как их индексы в треугольниках хранятся в 2 байтах. |
=== Индексы === | === Индексы === | ||
Строка 149: | Строка 149: | ||
== Ссылки == | == Ссылки == | ||
Утилиты так или иначе связанные с импортом\экспортом dm: | Утилиты так или иначе связанные с импортом\экспортом dm: | ||
− | *[https://github.com/igelbox/blender-xray | + | *[https://github.com/igelbox/blender-xray Плагин blender-xray] от '''igelbox''' |
− | + | ||
[[Участник: Pavel]] | [[Участник: Pavel]] | ||
[[Категория:Форматы файлов]] | [[Категория:Форматы файлов]] |
Текущая версия на 12:42, 4 марта 2018
Перед прочтением данной статьи, прочтите эту статью:
Бинарные файлы
Описание
Файлы формата *.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 |
На вершины накладываются ограничения:
1. Одна вершина может иметь только одну текстурную координату.
При сохранении модели в *.dm, вершина, имеющая две (и более) текстурных координат, преобразуются в две (и более) вершины.
2. Их количество должно быть не больше 65536, так как их индексы в треугольниках хранятся в 2 байтах.
Индексы
Индексы вершин по которым образуются треугольники.
Индексы хранятся последовательно.
Структура индекса:
Данные | Тип |
---|---|
индекс вершины | H |
Ссылки
Утилиты так или иначе связанные с импортом\экспортом dm:
- Плагин blender-xray от igelbox