Автор: MastaMan
Дата: Апрель 4, 2023
Обновлено: Июль 25, 2023
Вы читаете часть: 1 2 3 4 5

Вступление

Это Часть 3 из 5 серии уроков по добавлению интерактивности интерьеру SVOYA Apartment.

Доступ к материалам, такие как: модели в формате "FBX", запеченные текстуры, скрипты и другое, вы можете получить оформив подписку на Patreon.

Patreon

Посмотреть Playcanvas проект онлайн.

View Playcanvas Project Online

Создание материала дивана

С момента запуска проекта SVOYA Apartment прошел уже год, и за это время Playcanvas успел получить немало интересных обновлений и настроек материалов. Веб-движок Playcanvas продолжает развиваться, постоянно улучшая свои возможности и инструменты для создания высококачественных 3D-приложений и игр.

Одним из наиболее важных и интересных инструментов является "Falloff". Эта функция давно доступна в 3Ds Max, и позволяет легко и быстро настроить материалы тканей. К тому же, в 3Ds Max есть возможность смешивать различные карты при помощи “Mix” и создавать уникальные эффекты, такие как вельвет.

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

playcanvas clost material example 1
Loading...
playcanvas clost material example 2
Loading...

За год существования проекта SVOYA Apartment веб-движок Playcanvas успел значительно развиться и расширить свои возможности. Большой вклад в это внесли настройки материалов, среди которых особенно выделяются новые опции "Sheen" и "Clearcoat". Используя их вместе, можно создавать невероятно реалистичные эффекты, такие как шелковая вельветовая ткань, которая меняет свой оттенок и яркость в зависимости от угла обзора и расстояния от объекта.

Чтобы лучше понять, как работают эти настройки, рекомендую попробовать на практике. Я могу продемонстрировать на примере одного материала, как различные сочетания настроек влияют на качество рендеринга и визуальную привлекательность материала. Главное не бояться экспериментировать и творчески подходить к настройке материалов в Playcanvas!

Материал Sofa Green

Давайте создадим уникальный материал и дадим ему название "Sofa Green". Для начала, мы назначим запеченную карту теней в "Lightmap", чтобы улучшить освещение и придать материалу больше объемности. Затем, добавим готовую cubemap "Helipad" в раздел "Environment" с определенными настройками.

Однако, чтобы "Sheen" и "Clearcoat" начали работать должным образом, необходимо убедиться, что "Reflectivity" имеет значение "0". Только так мы сможем добиться наилучшего результата и получить визуально привлекательный материал с работающими параметрами “Sheen” и “Clearcoat”.

sofa green material environment
Loading...

Добавьте карту теней и в “Diffuse”. Включите опцию “Tint” и используйте зеленый цвет.

sofa green material diffuse
Loading...

В разделе “Specular” необходимо включить “Use Metalness”. Параметр “Metalness” установить в “0”.
“Glossiness” на “50”.

sofa green material specular
Loading...

Убедимся, что “Emissive” у нас полностью выключен.

sofa green material emissive
Loading...

Займемся настройкой “Sheen”.
“Sheen” это по сути и есть всем известный “Falloff” в 3Ds Max. Здесь вы можете указать цвет, который будет виден на изгибах модели, а также силу эффекта.
Изменяя цвет и “Glossiness”, можно добиться различных вариантов шероховатости тканей. Мне больше всего нравятся значения от “0.8” до “0.92”.

sofa green material sheen
Loading...

Для придания материалу эффекта вельвет, отлично подходит “Clearcoat”.
Я использовал текстуру потертостей в слотах “Clear Coat” и “Clear Coat Gloss”.

15
Loading...
sofa green material clearcoat
Loading...

Я использовал разные параметры “Tiling” текстур.
Для “Clear Coat Normals” использовал следующую текстур.

68
Loading...

Таким образом мы создали универсальный материал и его можно использовать для разных тканей, меняя параметры “Bumpiness”, “Glossiness” и “Clear Coat Factor”.

“Clear Coat Factor” - отвечает за силу эффекта вельвета.
“Glossiness” - придет эффект резиновости, рекомендую использовать от “0” до “0.3”.
“Bumpiness” - шелковистость материала.

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

Экспериментируйте, не важно что “Use Metalness” не относится к тканям никаким образом, просто крутите настройки и смотрите визуально, как это можно использоваться в своих целях.

result sofa green material
Loading...

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

Смена материалов дивана по нажатию UI-кнопки

Настройка UI элементов

Сделайте дубликат кнопки “ChangeColor”, переименуйте в “ChangeMaterial”.

duplicate button change colors
Loading...

Передвиньте кнопку и установите ее над диваном.
Кнопка готова!

Применение и настройка скрипта changeMaterial

Добавьте скрипт “change-material.js” в папку  “scripts/configurator”.

Скрипт  “change-material.js”.



add change material script
Loading...

Примените скрипт к объекту дивана.
Укажите в “Trigger Button” нашу кнопку “ChangeMaterial”.
В параметре “Materials” введите число, отвечающее за количество меняемых материалов.
Назначьте материалы на слоты.

configure change material script
Loading...

Запустите проект, материалы меняются поочередно по нажатию кнопки “ChangeMaterial”.

result playcanvas material configurator
Loading...

Заключение

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

Для подписчиков Patreon будет возможность просматривать проект SVOYA Apartment в режиме чтения, а также быстрое копирование-вставка необходимых ассетов и скриптов в свой личный проект.

Для всех остальных все необходимое найдете на странице этого урока.

Patreon


Вы читаете часть: 1 2 3 4 5
{{commentsMsg}}
  

Никто не оставил комментариев
{{comment.lastname}} {{comment.name}} {{comment.date}}
{{comment.text}}
Sponsored content