Документация Вывод

Альфа и прозрачность

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

У холста в Celas Studio канал альфы есть всегда, пока вы работаете. Что переживёт экспорт, целиком зависит от выбранного вами формата: одни сохраняют её в точности, другие вовсе не умеют её представить, а один сохраняет лишь жёсткую версию по принципу «всё или ничего».

Какие форматы её держат

ФорматАльфа
PNG (кадр, последовательность, лист)Да, без потерь
WebP (кадр, последовательность, лист)Да
JPEG, BMPНет: всегда сводится
MOV (QuickTime)Да, только прямая
WebM (VP9)Да
Анимированный WebPДа
MP4 (H.264 / HEVC)Нет: элемент каналов заперт на RGB
Анимированный GIFТолько жёсткая вырезка, смотрите ниже, а не мягкая прозрачность

Для кадра, последовательности или спрайтового листа фон предлагает цвет холста, чёрный, белый и прозрачность. Прозрачность появляется только для PNG и WebP, потому что JPEG и BMP её девать некуда. Возьмите любой из этих двух, и окно скажет прямо: «JPEG не может хранить прозрачность, экспорт идёт на цвете холста», и BMP показывается так же. Изображение сводится на тот цвет, на котором стоит фон, поэтому, если вам нужен прозрачный кадр, сперва переведите формат на PNG или WebP.

У видео прозрачность живёт не в фоне, а в элементе каналов: поставьте его в RGB + альфа, что доступно только для MOV, WebM и анимированного WebP. MP4 элемент гасит и принудительно ставит RGB, потому что ни H.264, ни HEVC канала альфы нести не могут вовсе. Для прозрачного движущегося изображения MP4 не вариант при любых прочих настройках.

GIF — особый случай

У GIF одна запись палитры отведена под полную прозрачность, и пиксель либо является этой записью, либо нет. Частичной альфы там нет. Мягкий край или падающая тень превращаются в жёсткую, слегка рваную вырезку. Ради чистого края выводите вместо этого MOV, WebM или анимированный WebP, а GIF держите для быстрых просмотров, где вырезка неважна.

Прямая и предумноженная

Там, где каналы стоят в RGB + альфа, появляется элемент цвета с двумя вариантами, прямым и с предумножением. Они хранят одну и ту же прозрачность, но лежащий под ней цвет держат по-разному, и выбор становится важен, как только клип собирают поверх чего-то ещё.

  • Прямая держит значения RGB ровно такими, какими они написаны, независимо от канала альфы, поэтому наполовину прозрачный красный пиксель по-прежнему хранится полноценным красным, а рядом с ним лежит 50% альфы.
  • Предумноженная смешивает цвет в сторону цвета подложки по мере падения альфы, поэтому наполовину прозрачный красный пиксель на чёрной подложке хранится более тёмным красным. Такой формат ждёт часть программ композитинга и воспроизведения, и он избавляет от бледной каймы вокруг мягких краёв в тех программах, что обращаются с альфой неправильно.

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

Подложка

Элемент фона становится подложкой в тот миг, как вы выбираете предумноженную, и предлагает цвет холста, чёрный или белый, но никогда прозрачность, потому что предумноженной нужен настоящий цвет, чтобы вмешать его в края. Возьмите тот фон, поверх которого вы клип на самом деле собираетесь класть; чем ближе совпадение, тем чище край. Выбор прямой, наоборот, убирает элемент вовсе, ведь прямая альфа держит цвет и прозрачность порознь, и подкладывать ей нечего.

Как проверить результат

Окна видео и анимированного GIF оба играют живой предпросмотр с восьмипиксельной шахматкой за всем прозрачным, поэтому видно ровно то, что переживёт и не переживёт вывод, ещё до нажатия экспорта. Предпросмотр GIF проходит тот же проход сокращения цветов, который получает готовый файл, поэтому что вы там видите, то и получите.

Как только файл записан, откройте его в программе, понимающей его канал альфы, чтобы убедиться: встроенного способа перепроверить прозрачность выведенного файла задним числом у Celas Studio нет, есть только собственный предпросмотр окна до вывода.