Rvmat dayz чем открыть

Обновлено: 04.07.2024

Итак, на днях несколько человек, с которыми я общаюсь в Интернете, и я сам решили получить собственный сервер Epoch, размещенный на HFB. Мы добились действительно большого прогресса, улаживая все это. Я тот, кто делает большинство (если не все) модификаций ... добавил топливный скрипт, буксировку / подъем, миссии ИИ и сделал пепел / металл неразрушимым. Все работало гладко (как и предполагалось, учитывая количество вещей, которые мне нужно было отредактировать, например, возиться с тем, какие транспортные средства могут/не могут буксировать и т. д.), за исключением нескольких ошибок:

<р>1. Сервер сделал свой первый автоматический перезапуск (мы делали это вручную при настройке), и база данных не загрузилась должным образом. Транспортные средства и построенные объекты исчезли. Перезапуск вручную вернул все обратно. Похоже, что он больше этого не делает, к счастью.

<р>2. Инвентарь оптовика пуст, в списке ничего не отображается. Что касается всей базы данных трейдеров, то ничего необычного не кажется. Акции не на 0 или что-то в этом роде. Единственные изменения, которые мы сделали в базе данных ВООБЩЕ, это удаление зарядов ранца, чтобы их нельзя было купить.. в остальном, ничего больше не редактировалось, только просматривалось. РЕДАКТИРОВАТЬ: я подумал, что должен упомянуть, что я провел поиск и даже видел ветку на этом же форуме ( ), но это тоже не проблема.

<р>3. Отправляясь север в любую точку карты, мы случайным образом получаем кики за отсутствие rvmats и текстур, в основном связанных с ca_plants и ibr. Это единственная "ошибка", которая, как мне кажется, связана с клиентской частью и должна быть исправлена, если аддоны OA и arma2 будут "объединены", хотя я пока не могу это подтвердить. Это не так. проблема на стороне клиента, и это не предложение Наминду. Я также смотрю эту ветку, чтобы найти исправление:

Попытка найти какие-либо исправления оказалась головной болью. Я нашел парочку и пошел их реализовывать, только понял, что "исправление" уже было "сделано" в коде, или у них еще не было исправления вообще в потоке.

Любая помощь будет оценена по достоинству, я, похоже, единственный из нашей группы, кто может справиться с этим, поскольку у меня есть некоторый (читай: достаточный, чтобы доставить мне неприятности) опыт работы с кодом ArmA. Если какие-либо журналы или информация должны быть представлены, просто дайте мне знать. Я также могу дать вам нашу информацию о ТС, если это упростит и ускорит работу. Бонусные баллы, если вы просто предоставите мне несколько чистых серверных файлов с надстройками, которые мы надеемся внедрить :D

Освещение и затенение делают 3D-сцену привлекательной. При рендеринге в реальном времени нам по-прежнему приходится упрощать, поэтому художник должен понимать, как работает затенение в движке, чтобы иметь возможность подготовить наиболее реалистично выглядящие поверхности.

Двигатель ARMA считает освещение как T * (D.o + A) + S.o

T = цвет текстуры

D = рассеянное освещение (цвет, интенсивность и направление. В движке ARMA есть только один источник направленного света — солнце или луна.) D рассчитывается как max(LN,0)*sunLightColor, где L — направление света, N направление поверхности (нормальное)

A = окружающее освещение (цвет и интенсивность. Оно всегда присутствует с одинаковой интенсивностью по всей сцене, и его значение определяется настройкой облачности)

S = specular (настройка глянца и зеркальности материала)

o = направление света (1= пиксель освещен, 0= пиксель в тени)

Простые материалы подсчитывают освещение на вершину путем интерполяции направления света между краями граней (нормалей). Она похожа на хорошо известную модель затенения Гуро. Более сложные материалы используют нормальную ориентацию пикселя.

Значения для расчета затенения объединяются из текстур, растровых изображений эффектов, настроек освещения двигателя (config) и настроек материала (*.rvmat).

Тени

Тени рассчитываются в движке ARMA двумя типами, в зависимости от значений в параметрах видео и каждой настройки модели.

Тени буфера трафарета четкие и добавляются после того, как вся сцена отрисована. Движок просто вычитает значение рассеянного света в тех местах, где появился объем теней трафарета. Это приводит к тому, что блики все еще присутствуют в тенях. Кроме того, когда параметры окружающего и диффузного материала не равны (и ForceDiffuse!=0), результирующий цвет неверен.

Буфер теней создает одну карту мягких теней, рассчитанную на GCard, для всей сцены из области просмотра. Это влияет на точность тени.

Глянец

Отражаемость материала определяется кривой ([WikiPedia:Функция двунаправленного отражения]), которая показывает, сколько света отражается под всеми углами. В движке ARMA мы можем использовать SPECULAR POWER, IRRADIANCE TABLE или значения FRESNEL в файлах *rvmat.

Разделы

Текстуры и материалы связаны с каждой гранью отдельно, поэтому художник может иметь различные материалы на поверхности, сопоставленные с одной текстурой.

Каждый раз, когда графической карте (GPU) дается указание рисовать с новыми параметрами, мы называем это разделом сцены. Обычно это происходит, когда появляется новый объект (*.p3d), текстура или материал.Разделы генерируются каждый раз, когда необходимо изменить параметры рендеринга на графической карте (GPU). Это всегда происходит при загрузке информации из ЦП о независимом ОБЪЕКТЕ, ТЕКСТУРЕ, МАТЕРИАЛЕ или пределе костей на карте. Накладные расходы на передачу инструкций между ЦП и ГП снижают производительность рендеринга, которая может использоваться для рендеринга сотен полигонов или текстур и т. д.

Текстура (TGA) назначается отдельным граням. Материал (RVMAT) присваивается одним и тем же граням отдельно, поэтому можно использовать разные материалы на поверхности, покрытой одной картой UV и CO. Но затем генерируются другие разделы. На СТАДИИ 0 возможно изменение с помощью RVMAT также диффузной текстуры компонента. Разделы могут отличаться в отдельных LOD.

Процедурные текстуры

Помимо текстур TGA/PAA, движок ARMA может работать с картами, созданными процедурно в реальном времени. Процедурные текстуры

Карта нормалей

Карты нормалей, используемые в Arma, представляют собой карты касательного пространства с ориентацией X+ Y- (такой же, как в Unreal Engine и настройке по умолчанию средства визуализации 3dsmax)

Файлы RVMAT

Эти файлы являются своего рода конфигами.

Основные настройки поверхности

умножает значения цвета (цветовая текстура R,G,B,A) поверхности, не освещенной основным направленным светом.

умножает значения цвета поверхности, освещенной основным направленным светом.

Эти значения помогают имитировать так называемую полупрозрачность. Часть рассеянного освещения, которая отражается на поверхности в тени. Он работает аналогично эмбиенту, но с другим компонентом освещения. К сожалению, некоторые шейдеры плохо работают с принудительным рассеиванием.

Эта комбинация дает тот же результат, что и старое свойство вершины Half Lighted (поверхность освещена одинаково со всех сторон, она кажется плоской)

Для поверхности листвы существуют специальные шейдеры, которые также используют принудительную настройку значения альфа-канала Diffuse для расчета количества света, проходящего через него (1 = все).

Также называется люминесценцией. Значения дают количество света, которое поверхность освещает сама по себе. Используйте его для источников света. Он будет нравиться светиться, но не будет освещать ничего вокруг.

Используется для создания так называемого хотспота (в максе это Specular level+specular color). Это часть света, которая отражается от поверхности. Specular рассчитывается по вершинам или по пикселям в зависимости от конкретного шейдера.

Также называется глянцевитостью. Определяет, насколько резкой будет горячая точка. Некоторые шейдеры вместо этого значения используют IRRADIANCE TABLE.

MaterialSettings.jpg


Все вышеупомянутые настройки могут быть рассчитаны в некоторых шейдерах на пиксель с использованием растровых изображений эффектов.

Все компоненты вместе используются при расчете затенения поверхности:

Значения цвета обычно находятся в диапазоне от 0 до 1, но могут быть и больше. Механизм ARMA рассчитывает свет в широком динамическом диапазоне со значениями, превышающими глубину 0-255 RGB. Окончательный RGB на мониторе рассчитывается для каждого кадра в зависимости от настроек диафрагмы глаза/оптики (затвора) setAperture/setApertureNew.

Реалистичные поверхности не отражают 100 % падающего света. Чем больше света отражается как зеркальное, тем менее рассеянным он является. Сумма рассеянного, принудительно рассеянного и отраженного света не должна превышать 1, НО это неверно для материалов ArmA реального времени, которые отображают только горячие точки солнечного света и пропускают окружающий свет.

Рассеивание для многих обычных поверхностей составляет от 40% до 80%. Если вы стремитесь к максимально реалистичным настройкам поверхности, изучите фотореференс. Настройки RVMAT позволяют добавить в текстуру максимально возможный цветовой диапазон, а затем изменить его до реалистичных значений с максимальным динамическим диапазоном.

Реалистичные поверхности обычно отражают направленный и рассеянный свет одинаково — Diffuse и Ambient равны. Движок ARMA имеет настройки окружения со значениями для диффузного и окружающего (контрастность сцены) на основе записи реального света. Калибровка цвета. Нецелесообразно компенсировать контраст в настройках материала.

Для пористых материалов используются более низкие значения рассеяния (некоторое количество света передается в forceDiffuse). Более низкие значения окружающей среды можно использовать на поверхностях, где необходимо уменьшить глобальную окружающую среду, например, в интерьерах. Обычно это делается с помощью карт Ambient Light.

Блестящий цвет

Обычно мы устанавливаем нейтральный цвет значений RGB. Но иногда эффективно подкрасить цвет в рвмате. Наиболее очевидно это проявляется в зеркальном отображении некоторых глянцевых металлических поверхностей.

Если мне нужен определенный цвет, я считаю:

B.. желаемый цвет горячей точки

Sp..actual Параметр Specular для материала горячих точек

Db.. цвет окружающего освещения (окружающий и рассеянный свет меняется днем ​​и в пасмурную погоду) Редактор окружения O2 показывает фактические цвета, используемые при предварительном просмотре бульдозера.

X .. число, которое я использую для умножения Specular для получения желаемого цвета.

Флаги рендеринга

Специальное свойство затенения, которое используется вместо старых настроек VERTEX LIGHTING PROPERTY.

Лица не учитываются в Z-буфере. Используется для альфа-прозрачных поверхностей, наложенных на другие грани, для исправления теневых артефактов. (например, логотип отряда)

Отключает расчет в цветовых каналах. Лицо вычисляется только в альфа- и Z-буфере.

Отключает расчет в альфа-каналах. Используется для прозрачного стекла с двухпроходным материалом.

Позволяет добавить альфа-прозрачный цвет поверхности к фону. Используется для частиц огня.

Определяет пороговое значение, при котором пиксель становится прозрачным при переходе к дискретному альфа-каналу. Чем больше значение, тем больше пикселей используется (Alphatest64, Alphatest128)

Всегда в тени можно добиться, настроив RVMAT диффузный[]= + разумное уменьшение бликов.

Легкий режим

Настройка различных видов расчета освещенности:

  • Нет
  • Вс
  • Небо
  • Горизонт
  • Пометки
  • Солнечный объект
  • SunHaloObject
  • Лунный объект
  • Объект MoonHalo

Режим тумана

Настройка различных видов расчета тумана:

  • нет – тумана нет
  • туман - туман, используемый обычными непрозрачными объектами; чем больше объект покрыт туманом, тем ближе его цвет к цвету тумана
  • альфа - туман, используемый объектами с альфой; чем больше объект покрыт туманом, тем он более прозрачен
  • fogAlpha — комбинация обоих вышеуказанных подходов; используется для дорог (альфа-аут может быть быстрее, чем запотевание); может использоваться для исчезновения объектов, когда объект не просто обычно затуманивается
  • fogSky - туман для объектов неба (луна, звезды)

Специфическая настройка шейдера

Каждый шейдер использует определенные «этапы»

Каждый этап определяет параметры для расчета шейдера, обычно в виде ссылок на растровые изображения эффектов.

  • texture= (имя и путь к растровой текстуре эффекта)

Необходимо соблюдать соглашения об именах текстур Соглашения об именах текстур, в противном случае не будет выполнено надлежащее автоматическое преобразование из TGA в PAA.

По умолчанию используется Анизотропный, но в некоторых случаях можно использовать Точечный, Линейный, Трилинейный.

может быть: none, tex, tex1 (второй набор UV), pos, norm, worlPos, worldNorm, texShoreAnim, texCollimator, texCollimatorInv

Смещение, деформация или повтор текстуры в заданном наборе UV.

Типы материалов

Список отдельных шейдеров

Дополнительную информацию о настройках материалов можно найти в шаблонах материалов

Физические свойства

Материалы также используются в геометрии для определения физических свойств.

Параметры для движка сохраняются в таблицы материалов *.bisurf и ссылка на них из материала выглядит так:

Учетная запись обновлена ​​| Название включено!


Создание моделей — руководство по редактированию

Привет, сегодня мы собираемся модифицировать здания Богемии.





Первое, что нам нужно сделать, это установить программное обеспечение для работы с PBO, ODOL и MLOD [ODOL и
MLOD - это .P3D]

<р>1. Менеджер PBO [Работа с архивами PBO]

<р>2. P3D Analyzer [Работа с P3D (ODOL)]

<р>3. Oxygen 2 Personal Edition можно найти в BI Editing Tools 2.5.1 [инструменты редактирования Bohemia должны работать с P3D (MLOD)]

Все эти инструменты должны быть установлены на вашем компьютере, прежде чем вы начнете изменять модели. [Если вы не знаете, как установить, используйте Google, чтобы найти руководство по установке].

1-й шаг. Откройте «structures_military.pbo», как вы можете видеть здесь, это модели - .P3D, откройте mil_barracks.p3d с P3D Analyzer. После открытия модели нам нужно извлечь MLOD и model.cfg. Посмотреть скриншоты…








После извлечения нам нужно изменить model.cfg, открыть его с помощью блокнота и найти там «Name_Of_Your_Model», затем переименовать его, например, в название модели «Mil_Barracks», и сохранить.


Чем нам нужно открыть модель с Oxygen 2 PE. Открыть.


Перейдите в UV-редактор. Как видите, 1-й УФ сет пропал, это плохо. Но теперь первое, что нам нужно сделать, это отсортировать набор 0. Иди и сделай это прямо сейчас.


Я трачу на это 3 часа… чтобы разобрать все, как мне нужно. Хорошо, и это здесь.



И после этой тяжелой работы я удалил все глючные материалы и текстуры.
Как мы видим, у модели нет текстур и материалов…


Теперь нам нужно добавить новые текстуры в здание. Вот так.


Мы берем только одну деталь и добавляем к ней текстуру, а затем материал


После добавления текстуры и материала к модели нам нужно перейти в UV Editor и настроить положение текстуры на детали модели.




После настройки положения вы можете увидеть примененные изменения в Buldozer

Как и в предыдущем шаге, примените текстуры и материал к модели.
В конце концов, сохраните всю свою работу и скопируйте modelname.p3d и model.cfg в архив pbo, чтобы увидеть изменения в игре.
Для создания нормального p3d файла нужно переименовать пути в материалы, т.к. BinPBO не работает (или глючит) с P путями. Я переименовал путь из
strikearena\2fed\buildings_materials\roof.rvmat
в E:\strikearena\2fed\buildings_materials\roof.rvmat,
чем после создания моего p3d я переименовал путь в P3D Analyzer.

Если вы не изменили пути к материалам, у вас могут быть эти ошибки в журнале
Невозможно загрузить файл материала dz\structures\mil\data\mil_barracks.rvmat.
Невозможно загрузить файл материала dz\structures\mil\data\mil_barracks.rvmat
Невозможно загрузить файл материала dz\structures\mil\data\mil_barracks_int.rvmat.
Невозможно загрузить файл материала dz\structures\mil\data\mil_barracks_int.rvmat
Невозможно загрузить файл материала dz\structures\data\alpha\glass_int_new_dam.rvmat.
Невозможно загрузить файл материала dz\structures\data\alpha\glass_int_new_dam.rvmat

Переименование путей в P3D Analyzer


После переименования путей не забудьте сохранить вашу модель.
После сохранения вы можете добавить модель в PBO, зайти в игру и посмотреть модель.
Это все.

[Архивное руководство с включенной моделью]
[Необходимо установить PowerPoint 2003 или выше]

Большое спасибо BadAss за помощь и обучение!

И имейте в виду: вместе мы можем исправить очень большое количество ошибок.
У меня только одно – Делайте Dayz SA лучше для всех. Не воровать, а только создавать!

И, конечно же, спасибо Алваррену, который разработал сценарий.

Следующее руководство будет посвящено rvmats

РЕДАКТИРОВАТЬ: Было бы приятно увидеть, как некоторые из вас публикуют свои готовые модели. или даже выложить их в раздел скрипты/аддоны!

Вот полная конфигурация:

класс CfgPatches
class clan_sign_tutorial
unit[] = ;
оружие[] = <>;
требуемая версия = 0,1;
requiredAddons[] = ;
>;
>;

класс CfgVehicleClasses
class clan_sign_tutorial
// имя в редакторе
displayName="Учебник по 3D модели";
>;
>;

класс CfgVehicles
класс Thing; // Внешняя ссылка на класс
class Clan_Sign: Thing
scope = 2;
model = "\tutorial\sing.p3d";
icon = "\Ca\misc\data\icons\i_danger_CA.paa";
displayName = "Знак клана";
mapSize = 0,7;
точность = 0,2;
класс транспортного средства = "clan_sign_tutorial";
destrType = "DestructNo";
>;
>;

спарлин

Новый участник

Подсказка. Нажмите «N» в окне просмотра и найдите флажок «Textured Solid» в разделе «Display». Включение этого параметра отрисовывает текстуру без необходимости возиться с освещением!

eyPFKrp.jpg

ксеркс

Новый участник

шинкикер

Администратор

Подсказка. Нажмите «N» в окне просмотра и найдите флажок «Textured Solid» в разделе «Display».Включение этого параметра отрисовывает текстуру без необходимости возиться с освещением!

Это хороший совет!

Раньше я использовал циклы рендеринга. но это несовместимо со сценарием (надо было упомянуть об этом в видео).

спарлин

Новый участник

1ZlyLLH.jpg

Я просто работаю над тем, чтобы добавить его в игру; Я думаю, что мне нужен LOD проезжей части, чтобы игроки могли войти в нее (я прав?). Как только он появится в игре, мне, вероятно, придется создавать карты нормалей и спецификаций.

Еще одно: у меня есть две UV-карты, одна для запекания ambient occlusion (т. е. у каждого лица есть свое собственное UV-пространство) и одна для карт диффузии/нормалей/spec (наложение UV для получения более высокого разрешения). Вы точно знаете, как я указываю, какой канал материала относится к какому набору UV?

шинкикер

Администратор

Это был мой проект на сегодня:
Я просто работаю над тем, чтобы добавить его в игру; Я думаю, что мне нужен LOD проезжей части, чтобы игроки могли войти в нее (я прав?). Как только он появится в игре, мне, вероятно, придется создавать карты нормалей и спецификаций.

Еще одно: у меня есть две UV-карты, одна для запекания ambient occlusion (т. е. у каждого лица есть свое собственное UV-пространство) и одна для карт диффузии/нормалей/spec (наложение UV для получения более высокого разрешения). Вы точно знаете, как я указываю, какой канал материала относится к какому набору UV?

Выглядит очень красиво.

Я никогда не слышал о LOD проезжей части, но опять же, у меня еще нет опыта работы со зданиями.

Хорошо, что касается второго пункта, я надеюсь рассказать об этом самостоятельно и тоже немного освоиться. Это нужно будет создать в вашем файле rvmat, а затем добавить в кислород.

Возможно, это одно из лучших руководств, которые я знаю:

И еще немного о rvmats:

Удачи, а также, если вы что-то добьетесь или застрянете, начните новую тему, так как я вижу, что это очень ценная информация, которую нужно иметь под рукой!

спарлин

Новый участник

Я добился большего прогресса. Он уже в игре!

Однако, как вы могли видеть, я столкнулся с несколькими проблемами.

<р>1. Плохое качество текстуры (у меня все настройки очень высокие)
2. Нет коллизии геометрии
3. Не любит, когда в него стреляют.

шинкикер

Администратор

Сейчас только на ноутбуке, через пару часов посмотрю на ПК.

Вы можете попробовать следующее:

Загрузите следующий rvmat (для дерева)

Откройте O2, нажмите "Ctrl + A", чтобы выбрать все вершины, а затем нажмите "E".

Затем вы должны увидеть текстовые поля внизу слева. Откройте проводник в разделе «Материал», а затем — wood.rvmat.

Примечание. Это может изменить внешний вид вашей модели (сделать ее слегка оранжевой), потому что материалы необходимо настроить. Возможно, вы сможете добавить сюда файл запекания AO.

Новый участник

спарлин

Новый участник

Спасибо, mdk, этот барьер выглядит очень хорошо!

Я добился прогресса:

PojH8k3.jpg

Я исправил ошибки текстуры, исправив множество ошибок (ссылки и PixelShaderID ) в моем файле .rvmat. Я также пошел и создал карты Normal и Spec.

Я устранил проблемы с коллизиями, сделав модель коллизии исключительно из отдельных блоков, а не из грубой 3D-модели (очевидно, вогнутые 3D-формы не допускаются!)

Спасибо за файл wood.bisurf, я использовал его, и он работает правильно.

<р>1. Дверь слишком мала, игрок застревает
2. Модель кажется парящей; он движется, когда вы стреляете в него! Я чувствую, что это может быть свойство, унаследованное от класса «автомобиль». Есть идеи, как это починить (в настоящее время он весит 800 кг, но все еще двигается. Можете ли вы показать мне, как сделать из него статическую опору? стандартные здания)

Я перезагружу все файлы, чтобы другие могли увидеть, что я сделал (файлы .PSD/blend/p3d)

Освещение и затенение делают 3D-сцену привлекательной. При рендеринге в реальном времени нам по-прежнему приходится упрощать, поэтому художник должен понимать, как работает затенение в движке, чтобы иметь возможность подготовить наиболее реалистично выглядящие поверхности.

Двигатель ARMA считает освещение как T * (D.o + A) + S.o

T = цвет текстуры

D = рассеянное освещение (цвет, интенсивность и направление. В движке ARMA есть только один источник направленного света — солнце или луна.) D рассчитывается как max(LN,0)*sunLightColor, где L — направление света, N направление поверхности (нормальное)

A = окружающее освещение (цвет и интенсивность. Оно всегда присутствует с одинаковой интенсивностью по всей сцене, и его значение определяется настройкой облачности)

S = specular (настройка глянца и зеркальности материала)

o = направление света (1= пиксель освещен, 0= пиксель в тени)

Простые материалы подсчитывают освещение на вершину путем интерполяции направления света между краями граней (нормалей). Она похожа на хорошо известную модель затенения Гуро. Более сложные материалы используют нормальную ориентацию пикселя.

Значения для расчета затенения объединяются из текстур, растровых изображений эффектов, настроек освещения двигателя (config) и настроек материала (*.rvmat).

Тени [ ]

Тени рассчитываются в движке ARMA двумя типами, в зависимости от значений в параметрах видео и каждой настройки модели.

Тени буфера трафарета четкие и добавляются после того, как вся сцена отрисована. Движок просто вычитает значение рассеянного света в тех местах, где появился объем теней трафарета. Это приводит к тому, что блики все еще присутствуют в тенях. Кроме того, если параметры окружающего и диффузного материала не равны (и ForceDiffuse!=0), результирующий цвет будет неправильным.

Буфер теней создает одну карту мягких теней, рассчитанную на GCard, для всей сцены из области просмотра. Это влияет на точность тени.

Глянец [ ]

Отражаемость материала определяется кривой ([WikiPedia:Функция двунаправленного отражения]), которая показывает, сколько света отражается под всеми углами. В движке ARMA мы можем использовать SPECULAR POWER, IRRADIANCE TABLE или значения FRESNEL в файлах *rvmat.

Разделы [ ]

Текстуры и материалы связаны с каждой гранью отдельно, поэтому художник может иметь различные материалы на поверхности, сопоставленные с одной текстурой.

Каждый раз, когда графической карте (GPU) дается указание рисовать с новыми параметрами, мы называем это разделом сцены. Обычно это происходит, когда появляется новый объект (*.p3d), текстура или материал. Разделы генерируются каждый раз, когда необходимо изменить параметры для рендеринга на графической карте (GPU). Это всегда происходит при загрузке информации из ЦП о превышении лимита независимых ОБЪЕКТОВ, ТЕКСТУР, МАТЕРИАЛОВ или костей на карте. Накладные расходы на передачу инструкций между ЦП и ГП снижают производительность рендеринга, которая может использоваться для рендеринга сотен полигонов или текстур и т. д.

Текстура (TGA) назначается отдельным граням. Материал (RVMAT) присваивается одним и тем же граням отдельно, поэтому можно использовать разные материалы на поверхности, покрытой одной картой UV и CO. Но затем генерируются другие разделы. На СТАДИИ 0 возможно изменение с помощью RVMAT также диффузной текстуры компонента. Разделы могут отличаться в отдельных LOD.

Процедурные текстуры [ ]

Помимо текстур TGA/PAA, движок ARMA может работать с картами, созданными процедурно в реальном времени. Процедурные текстуры

Карта нормалей [ ]

Карты нормалей, используемые в Arma, представляют собой карты касательного пространства с ориентацией X+ Y- (такой же, как в Unreal Engine и настройке по умолчанию средства визуализации 3dsmax)

Файлы RVMAT [ ]

Эти файлы являются своего рода конфигами.

Основная настройка поверхности [ ]

умножает значения цвета (цветовая текстура R,G,B,A) поверхности, не освещенной основным направленным светом.

умножает значения цвета поверхности, освещенной основным направленным светом.

Эти значения помогают имитировать так называемую полупрозрачность. Часть рассеянного освещения, которая отражается на поверхности в тени. Он работает аналогично эмбиенту, но с другим компонентом освещения. К сожалению, некоторые шейдеры плохо работают с принудительным рассеиванием.

Эта комбинация дает тот же результат, что и старое свойство вершины Half Lighted (поверхность освещена одинаково со всех сторон, она кажется плоской)

Для поверхности листвы существуют специальные шейдеры, которые также используют принудительную настройку значения альфа-канала Diffuse для расчета количества света, проходящего через него (1 = все).

Также называется люминесценцией. Значения дают количество света, которое поверхность освещает сама по себе. Используйте его для источников света. Он будет нравиться светиться, но не будет освещать ничего вокруг.

Используется для создания так называемого хотспота (в максе это Specular level+specular color). Это часть света, которая отражается от поверхности. Specular рассчитывается по вершинам или по пикселям в зависимости от конкретного шейдера.

Также называется глянцевитостью. Определяет, насколько резкой будет горячая точка. Некоторые шейдеры вместо этого значения используют IRRADIANCE TABLE.


Все вышеупомянутые настройки могут быть рассчитаны в некоторых шейдерах на пиксель с использованием растровых изображений эффектов.

Все компоненты вместе используются при расчете затенения поверхности:

Значения цвета обычно находятся в диапазоне от 0 до 1, но могут быть и больше. Механизм ARMA рассчитывает свет в широком динамическом диапазоне со значениями, превышающими глубину 0-255 RGB. Окончательный RGB на мониторе рассчитывается для каждого кадра в зависимости от настроек диафрагмы (затвора) глаза/оптики [[1]].

Реалистичные поверхности не отражают 100 % падающего света. Чем больше света отражается как зеркальное, тем менее рассеянным он является.Сумма рассеянного, принудительно рассеянного и отраженного света не должна превышать 1, НО это неверно для материалов ArmA реального времени, которые отображают только горячие точки солнечного света и пропускают окружающий свет.

Рассеивание для многих обычных поверхностей составляет от 40% до 80%. Если вы стремитесь к максимально реалистичным настройкам поверхности, изучите фотореференс. Настройки RVMAT позволяют добавить в текстуру максимально возможный цветовой диапазон, а затем изменить его до реалистичных значений с максимальным динамическим диапазоном.

Реалистичные поверхности обычно отражают направленный и рассеянный свет одинаково — Diffuse и Ambient равны. Движок ARMA имеет настройки окружения со значениями для диффузного и окружающего (контрастность сцены) на основе записи реального света. Калибровка цвета. Нецелесообразно компенсировать контраст в настройках материала.

Для пористых материалов используются более низкие значения рассеяния (некоторое количество света передается в forceDiffuse). Более низкие значения окружающей среды можно использовать на поверхностях, где необходимо уменьшить глобальную окружающую среду, например, в интерьерах. Обычно это делается с помощью карт Ambient Light.

Зеркальный цвет [ ]

Обычно мы устанавливаем нейтральный цвет значений RGB. Но иногда эффективно подкрасить цвет в рвмате. Наиболее очевидно это проявляется в зеркальном отображении некоторых глянцевых металлических поверхностей.

Если мне нужен определенный цвет, я считаю:

B.. желаемый цвет горячей точки

Sp..actual Параметр Specular для материала горячих точек

Db.. цвет окружающего освещения (окружающий и рассеянный свет меняется днем ​​и в пасмурную погоду) Редактор окружения O2 показывает фактические цвета, используемые при предварительном просмотре бульдозера.

X .. число, которое я использую для умножения Specular для получения желаемого цвета.

Флаги рендеринга [ ]

Специальное свойство затенения, которое используется вместо старых настроек VERTEX LIGHTING PROPERTY.

Лица не учитываются в Z-буфере. Используется для альфа-прозрачных поверхностей, наложенных на другие грани, для исправления теневых артефактов. (например, логотип отряда)

Отключает расчет в цветовых каналах. Лицо вычисляется только в альфа- и Z-буфере.

Отключает расчет в альфа-каналах. Используется для прозрачного стекла с двухпроходным материалом.

Позволяет добавить альфа-прозрачный цвет поверхности к фону. Используется для частиц огня.

Определяет пороговое значение, при котором пиксель становится прозрачным при переходе к дискретному альфа-каналу. Чем больше значение, тем больше пикселей используется (Alphatest64, Alphatest128)

Ссылка на файл настроек физики поверхности.

Всегда в тени можно добиться, настроив RVMAT диффузный[]= + разумное уменьшение бликов.

Режим тумана [ ]

Настройка различных видов расчета тумана:

  • туман - туман, используемый обычным непрозрачным объектом, чем больше объект покрыт туманом, тем ближе его цвет к цвету тумана
  • альфа - туман, используемый объектами с альфой, чем больше объект покрыт туманом, тем он более прозрачен.
  • fogAlpha — комбинация обоих вышеперечисленных подходов, используемая для дорог (альфа-аут может быть быстрее, чем запотевание)

комбинация обоих подходов, используемая для дорог, способ затухания объектов, когда объект не просто запотевает обычно

Специфическая настройка шейдера [ ]

Каждый шейдер использует определенные «этапы»

Каждый этап определяет параметры для расчета шейдера, обычно в виде ссылок на растровые изображения эффектов.

  • texture= (имя и путь к растровой текстуре эффекта)

Необходимо соблюдать соглашения об именах текстур Соглашения об именах текстур, в противном случае не будет выполнено надлежащее автоматическое преобразование из TGA в PAA.

По умолчанию используется Анизотропный, но в некоторых случаях можно использовать Точечный, Линейный, Трилинейный.

может быть: none, tex, tex1 (второй набор UV)

Смещение, деформация или повтор текстуры в заданном наборе UV.

Типы материалов [ ]

Список отдельных шейдеров [ ]


Подробнее о настройках материала можно найти в разделе Физические свойства [ ]

Материалы также используются в геометрии для определения физических свойств.

Параметры для движка сохраняются в таблицы материалов *.bisurf и ссылка на них из материала выглядит так:

Читайте также: