Вердж3Д для 3дс Макса: Прозрачность — Софт Эйт Софт
Description: Узнайте, какие виды прозрачности можно включить для материалов 3дс Макс и использовать в Вердж3Д.

# Прозрачность / 3дс Макс

Здесь мы покажем, как включить и настроить прозрачность «3дс Макс»-материалов Physical, OpenPBR, Standard и glTF-совместимых.

Данная функциональность используется в демо-приложении «Прозрачность» (исходные файлы доступны в магазине ассетов).

- Альфа-блендинг и альфа-клиппинг
- Аддитивный композитинг (рендеринг без буфера глубины)
- Порядконезависимая прозрачность (OIT)
- Прозрачность физических материалов
- Прозрачность стандартных материалов
- Прозрачность glTF-совместимых PBR-материалов

#

## Альфа-блендинг и альфа-клиппинг

«Вердж3Д», являясь 3Д-движком, работающим в реальном времени, предлагает два метода работы с прозрачными объектами: альфа-блендинг и альфа-клиппинг (обычно с изображением-маской). Альфа-блендинг позволяет комбинировать полупрозрачный цвет переднего плана с цветом фона, используя альфа-канал в качестве фактора смешивания. Альфа-клиппинг действует по принципу отбрасывания всех пикселей альфа-канала меньше заданного порога (всегда равно 0.5 в «Вердж3Д» для «3дс Макса»).

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

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

Также поддерживается вариация метода Mask, называемая Coverage. Она использует MSAA-рендеринг для улучшения качества рендеринга клиппинг-прозрачности.

#

## Аддитивный композитинг (рендеринг без буфера глубины)

«Вердж3Д» также предлагает специальный режим, для отключения буфера глубины во время рендеринга. Это приводит к отмене сравнения значений глубины пикселей перекрываемых полигонов. Такие полигоны будут визуализированы аддитивным способом, который иногда позволяет избавиться от артефактов альфа-смешения.

Выберите Add или Blend в выпадающем списке Alpha Mode и снимите флажок Depth Write в настройках материала, чтобы включить этот режим. Кроме того, вам нужно будет увеличить значение Rendering Order в настройках объекта, чтобы прозрачный объект рендерился выше всех.

#

## Порядконезависимая прозрачность (OIT)

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

Данную опцию можно активировать в диалоге настроек экспорта Verge3D Export Settings.

Ограничения:

- OIT опция совместима только с WebGL 2, в противном случае эффекта не будет.
- OIT игнорируется зондами освещения в виде отражающих кубических текстур и в виде планарных отражений.
- Может плохо работать с объектами с высокой непрозрачностью.
- Не следует использовать вместе с MSAA (мультисемпловое сглаживание) в сценах с 2 и более непрозрачными объектами. Вместо этого вы можете использовать FXAA (быстрое приближенное сглаживание), которое полностью совместимо с OIT.

#

## Прозрачность физических материалов

Прозрачность физических (а также OpenPBR) материалов можно настроить с помощью одноименного параметра материала.

Параметры:

Transparency
  Интенсивность прозрачности, цвет и шероховатость. Параметры цвета и шероховатости поддерживаются только для прозрачности на основе преломления (Thin-walled выключен).
Thin-walled
  Использовать общую тонкостенную прозрачность (Thin-walled включён) или прозрачность на основе преломления (Thin-walled выключен).
Alpha Mode
  Режим прозрачности материала.
  Auto
    Проанализировать материал и выбрать один из двух методов: Opaque (непрозрачный) или Blend (альфа-блендинг).
  Opaque
    Не использовать прозрачность.
  Blend
    Альфа-блендинг (см. выше).
  Add
    Прозрачность на основе аддитивиного композитинга (см. выше).
  Mask
    Прозрачность в виде маски (альфа-клиппинг) (см. выше).
  Coverage
    Хеш-прозрачность, или прозрачность частичного перекрытия. Этот метод является промежуточным между клиппингом и блендингом. По сути это расширение метода маски, использующее мульти-самплинг.
Transparency Hack
  Включить один из двух специализированных режимов для борьбы с артефактами прозрачности:
  Nearest Layer
    Рендерить только ближайший к камере слой с помощью вспомогательного буфера глубины (техника "depth prepass").
  Two-Pass
    Рендерить сначала обратную сторону объектов, а потом прямую. Техника работает только для двусторонних материалов (опция 2-Sided должна быть включена).
  Обе техники уменьшают производительность, поэтому используйте их только когда это реально необходимо.
Depth Write
  Отключение для аддитивного составления прозрачности (смотрите выше).

По умолчанию в «3дс Максе» параметр Thin-walled не включен, что отключает наиболее типичный рендеринг прозрачности, который чаще всего используется в интерактивных приложениях. Всегда следите за этим параметром, когда имеете дело с прозрачными материалами.

Любая комбинация карт и изображений может быть использована для влияния на прозрачность через вход Transparency Map.

#

## Прозрачность стандартных материалов

Прозрачность стандартных материалов можно настроить с помощью параметра Opacity в настройках материала.

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

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

Используйте выпадающий список Alpha Mode для выбора режима прозрачности.

#

## Прозрачность glTF-совместимых PBR-материалов

Чтобы включить прозрачность для таких материалов, необходимо использовать отдельную альфа-карту, связанную с входом Transparency Map физического материала.

Используйте выпадающий список Alpha Mode для выбора режима прозрачности из списка поддерживаемых: Auto, Opaque, Blend и Mask.

## Остались вопросы?

Задайте их на нашем форуме!