Материалы
Материал решает, как выглядит поверхность. Каждое поле с диапазоном и значением по умолчанию — в сгенерированном справочнике компонентов; какие карты принимает каждый тип — в картах материалов. Эта страница — о том, как ими пользоваться.
Материал — это список слотов
Не один материал, а список. Порядок слотов повторяет подмеши импортированной модели: слот 1 красит первую группу, слот 2 — вторую. Так один стул бывает из дерева и ткани.
У объектов, собранных из примитива, один слот — и обычно больше не нужно.
Их перестановка ничего не пересобирает, и слот сохраняет настройки при переносе.
Выбор типа
| Тип | Берите, когда |
|---|---|
standard | хотите, чтобы выглядело настоящим — выбор по умолчанию |
physical | нужны стекло, лак, прозрачное покрытие, преломление |
basic | нужен плоский цвет, игнорирующий освещение |
toon | нужна стилизованная затенённость полосами |
normal | вы отлаживаете поверхность |
chromakey | есть видео с цветом, который надо убрать, — зелёный экран |
occluder | нужна невидимая форма, скрывающая то, что за ней |
ref | хотите переиспользовать материал, сохранённый как ресурс |
Смена типа меняет набор существующих настроек, поэтому в панели полей становится больше или меньше.
Настройки, общие для всех типов
| Настройка | Что делает |
|---|---|
color | базовый цвет |
opacity | от 0 до 1 |
transparent | должен быть включён, иначе opacity меньше 1 ни на что не влияет |
side | какие грани рисуются: лицевые, обратные или обе |
wireframe | рисовать только рёбра |
visible | рисовать вообще |
Что добавляет каждый тип
| Тип | Есть также |
|---|---|
standard | metalness, roughness, emissive, emissiveIntensity |
physical | всё вышеперечисленное плюс clearcoat, clearcoatRoughness, transmission, thickness, ior |
toon | emissive, emissiveIntensity и градиентная рампа |
normal | flatShading и никакого цвета |
chromakey | keyColor, similarity, smoothness, spill — прозрачный по умолчанию |
occluder | только side |
Если поверхность выглядит неправильно, сначала правьте roughness. Metalness в реальности почти бинарен — вещь либо голый металл, либо нет, — а промежуточные значения читаются в основном как ошибка.
Физические дополнения
clearcoat — слой лака сверху: автомобильная краска, лакированное дерево, экран телефона.
transmission вместе с thickness и ior даёт стекло и жидкость: свет проходит насквозь и
преломляется, а не отражается.
Оставленные на значениях по умолчанию, они сворачиваются при компиляции, так что physical
работает ровно так же быстро, как standard. Вот включение transmission действительно стоит
работы — браузер рисует сцену дважды, — так что используйте его там, где оно себя оправдывает.
Текстурные карты
Каждая карта — это изображение плюс его опции. Обычно достаточно задать изображение; опции нужны, когда текстура тайлится не так или выглядит растянутой.
| Опция | Чем управляет |
|---|---|
repeat, offset, center | как тайлится и где располагается |
rotation | в градусах |
wrapS, wrapT | повтор, обрезка или зеркалирование по краям |
magFilter, minFilter | как сэмплируется вблизи и вдали |
anisotropy | 1–16 — резкость под скользящими углами |
generateMipmaps | уменьшенные версии для дальних планов |
colorSpace | как трактуются значения изображения |
channel | какой набор UV использовать, 0–3 |
flipY, premultiplyAlpha | ориентация и обработка прозрачности |
Изображение, несущее цвет, и изображение, несущее числа — roughness, маску, карту высот, — должны трактоваться по-разному. Ошибитесь на карте roughness, и поверхность будет выглядеть едва заметно и необъяснимо не так. Если карта — не картинка, значит, это данные.
Какие карты принимает каждый тип: карты материалов.
Переиспользование материала
Механизма два, и разница важна:
| Вам нужно | Используйте |
|---|---|
| Отправная точка, которую потом правят на каждом объекте | Replace from library — он копирует значения |
| Один общий материал, редактируемый в одном месте | слот ref, указывающий на ресурс-материал |
У библиотеки три источника: этот проект, ваша команда и creators hub платформы. Применение из любого копирует; дальнейшая правка затрагивает только этот объект.
Копирование правильно для «начать с этого и разойтись». Ссылка правильна для «вот эти сорок объектов — один и тот же материал»: меняете ресурс один раз, и все сорок следуют за ним.
Два особых, о которых стоит знать
Occluder — это AR-трюк: невидимая форма, скрывающая то, что за ней. Поставьте её там, где стоит настоящая колонна, и виртуальный контент будет правильно исчезать за ней — а это большая часть того, что продаёт иллюзию.
Chroma key убирает цвет из видео — зелёный экран, чтобы снятый человек мог стоять в вашей
сцене без прямоугольника вокруг. Крутите similarity, пока фон не исчезнет, smoothness —
чтобы смягчить край, и spill — чтобы убрать зелёный отлив с краёв объекта.
За пределами фиксированных типов
Если ничем из этого нужный вид не выразить, соберите материал графом. Встроенные типы — точки в той же системе, так что граф — не откат назад. → Графы материалов
Дальше: Физика