Чистая альфа для интеграции ваших рендеров
Прозрачное изображение готово, когда его контуры остаются правдоподобными на предусмотренных фонах после импорта и масштабирования в принимающей программе. Сначала проверьте интерпретацию альфы, затем цвет и эффекты. Чистая шахматка ничего не доказывает: она может скрывать светлую кайму, тёмный край или обрезанный блик.
Разделяем прозрачность и сопровождающий её цвет
Альфа-канал показывает вклад переднего плана в композицию. При нуле он прозрачен, при единице — непрозрачен; промежуточные значения участвуют в смягчённых краях и частично прозрачных зонах. Шахматка — лишь вспомогательный элемент отображения. Она не является частью вашего изображения и не доказывает, что в файле есть ожидаемый канал.
Существуют две конвенции связи цвета и альфы. В straight, также называемом несвязанным, цвет хранится отдельно от покрытия. В premultiplied, или связанном, цвет уже умножен на альфу. Blender использует вторую конвенцию для своего рендеринга и композитинга. Узел Alpha Convert позволяет переходить от одной к другой; операция, выполненная в straight, должна вернуться к конвенции, ожидаемой на выходе. Руководство Blender описывает этот момент.
Выбор — не вопрос предпочтения по качеству. Здоровое изображение может выглядеть испорченным, если программа применит к нему неверную конвенцию. Определите, что содержит файл, прежде чем добавлять узел преобразования.
Посмотрим, что двойное умножение делает с краем
Возьмём иллюстративный расчёт в линейном свете, не претендуя на описание реального пикселя. Straight-цвет красного края равен (0,8; 0,1; 0,1) при альфе 0,25. Его премультиплицированный цвет, следовательно, равен (0,2; 0,025; 0,025). На сером фоне (0,4; 0,4; 0,4) вклад фона умножается на 0,75. Результат равен (0,5; 0,325; 0,325).
Если программа обрабатывает уже премультиплицированные значения как straight, она умножает их снова на 0,25. Красный вклад уменьшается: край темнеет. В обратную сторону, пропуск ожидаемого умножения может сделать контур чрезмерно ярким. При этом сама альфа может казаться корректной в чёрно-белом виде.
Эта демонстрация объясняет одно семейство каймы; она не позволяет диагностировать все дефекты только по внешнему виду. Закрепившийся цвет фона, неверное управление цветом или эффект, применённый после композиции, могут дать похожий результат. Сохраняйте исходный файл, чтобы вернуться к изначальной интерпретации.
| Наблюдение | Первая проверка | Чего избегать |
|---|---|---|
| Тёмный край на светлом фоне | Конвенция альфы и повторное умножение | Сразу размывать весь контур |
| Светлый ореол на тёмном фоне | Интерпретация и старый фон, смешанный с цветами | Затемнять весь объект |
| Контуры правильные, но общий оттенок другой | Цветовые пространства и преобразования | Менять альфу, чтобы исправить цвет |
| Дефект только после уменьшения | Пересэмплирование и порядок эффектов | Проверять только в исходном разрешении |
Подготовить прозрачный вывод и договор об импорте
Сначала убедитесь, что на рендере действительно есть нужная прозрачность. Фон, видимый сквозь стеклянный объект, играет не ту же роль, что отсутствующий задний план. Затем выберите формат вывода с альфа-каналом и проверьте сохранённый файл, а не только Render Result. В сопроводительной записке укажите: размеры, цветовое пространство, ожидаемое соглашение об альфа-канале и целевые фоны.
Спецификация PNG определяет непредумноженный альфа-канал. OpenEXR традиционно использует предумноженные цвета. Эти соглашения — отправная точка для обмена; всё равно проверяйте используемые экспортёр и импортёр, особенно если промежуточное ПО перезаписало каналы. Не умножайте изображение вручную второй раз только потому, что его расширение кажется вам неоднозначным. Спецификация PNG и техническое введение в OpenEXR подробно описывают свою модель.
В принимающей программе импортируйте копию без коррекции. Отобразите отдельно каналы RGB и альфа, затем скомпонуйте изображение на согласованных фонах. Обоснованное преобразование должно улучшать контуры, не изменяя искусственно непрозрачные участки.
Пример: атласная лента на трёх фонах
Этот случай приведён для наглядности; описанные правила следуют руководству Blender 5.2, упомянутому выше, и не предполагают, что эта версия установлена. Пурпурная лента должна огибать заголовок на кремовом плакате, чёрной вариации и оранжевой карточке. Арт-дирекшн требует тонких петель и лёгкого смаза движения. Единственная проверка на шахматном фоне упустила бы две главные трудности: частично закрытые концы и очень светлые блики атласа.
Подготовьте три одинаковые композиции, каждая на однотонном фоне. Осмотрите внешний край, внутреннюю часть петель и зону, где лента пересекает заголовок. Посмотрите в реальном размере, а затем в конечном размере карточки. Если чёрная линия появляется только на кремовом и оранжевом, проверьте альфу, прежде чем править маску. Если кремовый оттенок остаётся на чёрном фоне, поищите цвет, уже смешанный с исходным изображением.
Затем выполните требуемое масштабирование и откройте полученный экспорт. Для анимации добавьте короткий последовательный фрагмент вокруг самого размашистого движения: контур должен сохранять форму, не мигая. Ожидаемая проверка — не «ни одного полупрозрачного пикселя»; эти пиксели необходимы для мягкого края. Речь идёт об их согласованном включении во все три фона.
Обрабатывайте края, не обрезая объект
Сначала вернитесь к минимальной композиции: изображение, интерпретация входа, фон, выход. Временно уберите акцентирование, свечение, цветокоррекцию и другие эффекты. Если кромка снова выглядит правильно, включайте операции по одной, чтобы найти виновника. Не совмещайте автоматическую коррекцию считывателя и ручное преобразование, не понимая, что делает каждое из них.
Нелинейная цветокоррекция, применённая к уже умноженным цветам, может потребовать временной работы в straight. Выполняйте это преобразование предназначенным для этого инструментом, защитите возврат к композиционной конвенции и проверяйте области с очень низкой альфой. Деление вручную на значение, близкое к нулю, может усилить нежелательные значения. Фильтр деконтаминации или лёгкое изменение маски делается только после этой диагностики, на копии и в пределах, допустимых для объекта.
И наконец, отделите контур объекта от его эффектов. Контактная тень или внешнее свечение могут быть должны оставаться видимыми за пределами его силуэта. Сжатие альфы для удаления каймы может их уничтожить. Если эти эффекты должны быть настраиваемыми, предусмотрите их возврат в элементы, согласованные с получателем; руководство по пассам композитинга поможет их выбрать.
Когда простого вырезания уже недостаточно
Преломление и отражения зависят от отрендеренного окружения. Альфа-канал не пересчитывает то, что увидело бы стекло, поставленное перед новым фоном. Поэтому у вырезанной бутылки контур может быть правильным, но в её стекле сохранится вид прежнего фона. При серьёзной замене протестируйте сцену с целевым фоном или согласуйте подходящую разбивку; не обещайте универсальную прозрачность.
До согласования проверьте светлые и тёмные фоны, мелкие детали, выходящие за края эффекты и финальное масштабирование. Если результат анимирован, проверьте также временную непрерывность. Сохраните эталонную композицию и укажите соответствующий прозрачный файл, чтобы получатель мог отличить ожидаемый результат от собственного фона.
Файл может пройти эту визуальную проверку и быть неверно истолкован в другом приложении. Поэтому примечание об импорте — часть сдачи. Если расхождение по контрасту затрагивает весь объект, вернитесь к файлу по согласованным цветам, прежде чем дальше уточнять маску.
Ваши вопросы.
Нужно ли настраивать прозрачный PNG как premultiplied?+
PNG хранит непредумноженную альфу согласно своей спецификации. Программа может преобразовать это представление внутри себя. Объявите входные данные правильно и избегайте лишнего необоснованного преобразования.
Почему шахматка кажется правильной, а на белом появляется окантовка?+
Шахматка может скрывать малоконтрастный дефект. Скомпонуйте изображение на светлом фоне, на тёмном фоне и на реальном целевом цвете, чтобы проверить контур.
Стоит ли ужесточать альфу, чтобы сделать край резким?+
Не обязательно. Частично прозрачные пиксели служат для смягчённых краёв, размытия и мелких деталей. Проверьте интерпретацию до любой эрозии или изменения маски.
Позволяет ли альфа свободно заменять фон за стеклом?+
Он не пересчитывает ни преломление, ни отражение. Для сложного прозрачного объекта смена фона может потребовать нового рендера или специально подготовленных элементов.