Прикрепите параметры 3ds max, какой выбрать, чтобы идентификаторы материалов оставались разными

Обновлено: 01.07.2024

Сетка (файл .cgf) может иметь разные материалы, назначенные разным граням. При работе в Autodesk 3ds Max убедитесь, что у вас достаточно субматериалов, чтобы покрыть количество идентификаторов материалов, назначенных граням объекта-сети. В противном случае идентификаторы материалов не будут правильно экспортированы в Lumberyard.

Следующая процедура представляет собой пример использования куба из нескольких материалов.

Чтобы сопоставить идентификаторы нескольких материалов в 3ds Max

Откройте 3ds Max. Затем создайте и разместите куб в окне просмотра.


Щелкните куб правой кнопкой мыши и выберите Преобразовать в, Преобразовать в редактируемую сетку. Теперь вы можете назначать разные идентификаторы материала граням.


В верхнем меню 3ds Max выберите «Визуализация», «Редактор материалов», «Редактор компактных материалов».

В верхнем меню 3ds Max выберите «Визуализация», «Обозреватель материалов/карт».


В Браузере материалов/карт в разделе "Материалы" разверните "Стандартный". Затем дважды щелкните Multi/Sub-Object. В редакторе материалов 3ds Max в разделе «Основные параметры нескольких/подобъектов» найдите список идентификаторов материалов для заполнения. Выберите первую запись, щелкнув «Нет» в столбце «Подматериал». Выберите «Стандартный» в разделе «Стандартный материал».


В редакторе материалов 3Ds Max в разделе «Основные параметры шейдера» выберите «Crytek Shader».

В разделе "Карты" рядом с пунктом "Диффузный цвет" выберите "Нет".

В обозревателе материалов/карт в разделе «Карты» дважды щелкните «Растровое изображение». Затем двойным щелчком выберите нужный файл изображения. После этого файл изображения появится в редакторе материалов 3DS Max для параметра Diffuse Color.


Оставаясь в редакторе материалов, выберите «Навигация», «Перейти к родительскому элементу». Затем повторите, чтобы вернуться к списку идентификаторов материалов.

Создайте второй вложенный шейдер, повторив шаги с 5 по 9 для второй записи в списке. Нажмите «Установить число», затем введите 2 во всплывающем окне «Количество материалов». В списке показаны только два подматериала.

В редакторе материалов в поле Имя введите имя.


Выделив объект в окне просмотра, перейдите в редактор материалов и выберите "Материал, назначить выбранному".

Нажмите значок молотка. В разделе «Утилиты» выберите «Экспорт Lumberyard», выберите объект, а затем нажмите «Добавить выбранное», чтобы поместить объект в список «Экспорт геометрии».

На панели 3ds Max справа в списке модификаторов выберите Editable Mesh, Polygon.

В окне просмотра выберите верхнюю грань. Затем в разделе «Свойства поверхности» нажмите «Установить идентификатор» и установите значение 2. Это заставит верхнюю грань использовать второй материал в окончательной группе материалов.

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


Выберите «Экспорт узлов», чтобы создать файл .cgf.


Нажмите «Создать материал», чтобы открыть редактор материалов Lumberyard и отобразить диалоговое окно файла.

Перейдите в каталог, где находятся ваши файлы .cgf. Затем введите то же имя файла, которое вы указали в 3ds Max. Это гарантирует, что файл .cgf сможет автоматически найти правильный файл .mtl при загрузке в редакторе материалов Lumberyard.


В редакторе Lumberyard создайте уровень и откройте файл .cgf. Объект должен иметь правильные материалы, сопоставленные с его гранями.

На этой странице представлена ​​информация о карте нескольких подобъектов.

Обзор

Текстура VRayMultiSubTex позволяет пользователю создавать единый материал, который отображает рандомизированные текстуры (или сплошные цвета) для каждого объекта, лица, идентификатора материала или на основе других режимов. Случайные текстуры распределяются между всеми объектами, использующими эту карту.На изображении, показанном здесь, Get ID from имеет тип, установленный как Object ID, и каждому из Total ID был присвоен свой цвет с помощью текстуры VRayColor.

||Окно редактора материалов|| > Обозреватель материалов/карт > Карты > V-Ray > VRayMultiSubTex


< /p>

Параметры

Получить идентификатор из – определяет значение параметров идентификатора.

Идентификатор материала поверхности – учитывается идентификатор поверхности объекта при передаче данных (цвета или текстуры) в материал.
Идентификатор объекта – учитывается идентификатор объекта объекта при передаче данных (цвета или текстуры). к материалу.
Случайный — идентификаторы выбираются случайным образом при передаче данных (цвета или текстуры) материалу.

Seed – позволяет изменить шаблон рандомизации.

Рандомизация. Этот раздел активен, только если выбран случайный режим. Указывает элементы, на основе которых будут рандомизированы цвета текстуры.

По имени — создает индекс цвета на основе имени узла, к которому применяется текстура. Это позволяет цвету оставаться постоянным, если объект объединен с другой сценой или X-Ref'ом и т. д.
By InstanceID — назначает случайные цвета на основе InstanceID (работает для экземпляров Alembic и исходных объектов VRayInstancer).
По идентификатору объекта: назначает случайные цвета на основе идентификатора объекта.
По элементу — присваивает случайные цвета на основе идентификаторов элементов (например, крышки чайника и т. д.) объекта.
By ParticleID — назначает случайные цвета на основе ParticleID (работает для исходных объектов VRayInstancer и Thinking Particles).
По дескриптору узла. Каждому узлу в 3ds Max присваивается уникальный номер (дескриптор) при его создании. Этот параметр генерирует индекс цвета на основе этого идентификатора узла. Это полезно, потому что дескриптор узла сохраняется при редактировании сцены, например. если вы добавите/удалите другие объекты или переименуете их, вы все равно получите те же цвета.
По идентификатору материала лица — назначает случайные цвета на основе идентификаторов материала лицевых сторон объекта.
По RenderID — назначает случайные цвета на основе RenderID.

При использовании параметра «По элементам» для рандомизации элементов VRayPoxy перед экспортом необходимо включить параметр «Оптимизировать для создания экземпляров» в диалоговом окне экспорта сетки V-Ray. Доступ к меню экспорта сетки V-Ray можно получить, щелкнув правой кнопкой мыши окно просмотра и выбрав Экспорт сетки V-Ray.

Random Hue/Sat/Gamma — эти три параметра управляют рандомизацией выходного цвета после обработки. Входное значение представляет собой процент диапазона HSV/gamma и указывает максимальное случайное отклонение, где диапазон gamma фиксируется на [1/10,10]. См. пример случайного оттенка/цвета/гаммы ниже .

Всего идентификаторов — можно использовать для установки количества подтекстур.

Удалить неиспользуемые — удаляет неиспользуемые слоты из списка.

Циклические текстуры — этот параметр работает с режимами идентификатора материала лица и идентификатора объекта. Когда объекты, назначенные с помощью карты VRayMultiSubTex, имеют идентификаторы, выходящие за пределы интервала допустимых идентификаторов подтекстур, параметр «Цикл через текстуры» вычисляет обернутую версию этих идентификаторов, которые соответствуют интервалу. Затем он выбирает соответствующую подтекстуру. Например, если объекту с идентификатором 5 назначен VRayMultiSubTex, а интервал допустимых идентификаторов субтекстур равен [1:4], он зацикливается и визуализируется с некоторыми субтекстурами. См. пример текстуры "Цикл через текстуру" ниже.

Смешивать цвет и текстуру: если этот параметр включен, альфа-канал субтекстур используется для смешивания цвета соответствующего идентификатора материала и цвета текстуры. Если этот параметр отключен, альфа-канал текстуры возвращается напрямую, а цвет, указанный в самой текстуре VRayMultiSubTex для данного идентификатора материала, игнорируется.

Цвет по умолчанию — цвет или текстура по умолчанию для объектов, идентификаторы которых не могут быть сопоставлены с идентификатором подтекстуры (с циклом или без него). Работает только в режимах Face material ID и Object ID.

ID (1-20) – указывает цвет или текстуру, которые будут назначены материалу, когда он назначается объекту с текущим идентификатором.

Итак, я строил очень стандартную научно-фантастическую стену. Помимо проблем со стилем, я столкнулся с большой проблемой. Я перепробовал все варианты, но результат один и тот же — испорченные материалы.

Как говорится, картинка стоит тысячи слов, так что вот что получается:

Material_problem_by_JohnnySix.jpg

Верхний вариант полностью все портит.

Есть ли способ сбросить идентификаторы всех материалов для всех объектов в сцене, чтобы они соответствовали материалам?

По результатам проб и ошибок это не кажется очевидным?

Ответы

Существует скрипт размытия, который очищает несколько материалов сетки и сворачивает их в один.

Редактировать: он называется CollapseSubObjectMaterial.

2-е редактирование: Кстати, я так работаю, если я соединяю две сетки вместе, я всегда использую 2-й вариант, а затем запускаю скрипт очистки материала.

Ах да, не могу забыть эту проблему!

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

Выберите сетку, к которой вы хотите прикрепить другие части,

Сверните модификатор UVW Unwrap на редактируемый полигон. (он не забудет ваши настройки)

Затем присоедините остальные части к исходной сетке (я предполагаю, что вы делаете это как редактируемую полигональную модель)


Просто убедитесь, что UV-развертки каждой части вынесены за пределы центральной рамки, чтобы они не перекрывались.

Это должно сработать.

Я делаю это скучным ручным способом, но ничего не портится.

Вручную настройте материал для нескольких подобъектов со всеми материалами, которые будут у вас на конечном объекте.

Выберите каждую часть, назначьте материал, а затем назначьте ей правильный идентификатор коврика.

Прикрепить все (и это даже не вызовет глупого диалога)

Поместите образцы материалов в новый слот с помощью пипетки. Скорее всего, у вас есть два материала с несколькими подобъектами, вызывающие проблемы.

Создайте главный мульти-подобъект и в свитке "Polygon: Material ID's" в "Edit Poly" установите идентификаторы для частей, чтобы они соответствовали вашему новому основному мульти-подобъекту.

Кажется, что Blurscipts не хотят загружаться с Max 9, а второй ответ - это то, что я все равно делал.

Увы, я нажимаю на некоторые грани, и они засчитываются двузначными числами, хотя используется только 7 материалов? :poly142:


Также теперь, помимо 32 слотов, в редакторе UT2004, после импорта, все слоты текстур перетасовываются. Мне не особенно нравится заменять каждую из них правильной текстурой, используя неуклюжий интерфейс редактора UT2004.

В игре рядом с предыдущей версией (с правильной текстурой)

Lightmaps_by_JohnnySix.jpg

И 32-й слот (Ued отсчитывается от 0)

32_slots_by_JohnnySix.jpg


Edit — Vig — означают ли каналы с идентификатором материала, которые вы назначаете в редакторе материалов, что-либо по отношению к идентификатору материала в модели?

Значат ли каналы с идентификатором материала, которые вы назначаете в редакторе материалов, по отношению к идентификатору материала в модели?

Если я правильно понимаю.

Редактировать: Поясню:

Эрик Чедвик

Все Blurscripts должны нормально загружаться в Max 9, я использовал их тонну. В этом (огромном) наборе есть несколько действительно хороших.

Все Blurscripts должны нормально загружаться в Max 9, я использовал их тонну. В этом (огромном) наборе есть несколько действительно хороших.

Хм, кажется, они никогда не загружались в пользовательский интерфейс. Должны ли они отображаться как новая панель инструментов/значки?

Я также посмотрел на боковую панель (утилиты), но там тоже ничего нет. :poly141:


В общем, забегая вперед, скажем, я снова начинаю с нуля новый проект, как мне остановить максимальное дублирование материалов/идентификаторов при создании сетки?

Эрик Чедвик

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

В целом, забегая вперед, скажем, я снова начинаю с нуля новый проект, как мне остановить максимальное дублирование материалов/идентификаторов при построении сетки?

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

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

Может быть удобно создавать наборы выбора на основе идентификаторов материалов.

Что касается канала с идентификатором материала в редакторе материалов (фактически он везде называется идентификатором G-буфера, плохая формулировка, если вы спросите меня), он предназначен для пометки материалов для использования в таких вещах, как видео. сообщение. Например, у вас есть зеленый материал, который вы хотите подсветить, и вы должны назначить GBuffer ID 2 для зеленого материала.Затем в записи видео вы должны установить эффект свечения для поиска GBuffer ID 2. Когда он найдет его, он применит эффект только к этому материалу.

Спасибо, Виг, теперь все намного понятнее! :poly124:

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

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