Czysta alfa, by wkomponować swoje rendery
Przezroczysty obraz jest gotowy, gdy jego kontury pozostają wiarygodne na przewidzianych tłach, po imporcie i zmianie rozmiaru w programie docelowym. Zacznij od sprawdzenia interpretacji alfy, potem koloru i efektów. Czysta szachownica nie wystarczy: może ukryć jasną frędzlę, ciemny brzeg lub ucięte odbicie.
Oddziel przezroczystość od towarzyszącego jej koloru
Kanał alfa wskazuje udział pierwszego planu w kompozycji. Przy zerze jest przezroczysty; przy jedynce nieprzezroczysty; wartości pośrednie uczestniczą w miękkich krawędziach i strefach częściowo przezroczystych. Szachownica to jedynie pomoc wyświetlania. Nie jest częścią twojego obrazu i nie dowodzi, że plik ma oczekiwany kanał.
Dwie konwencje wiążą kolor z alfą. W straight, zwanym też niepowiązanym, kolor jest przechowywany oddzielnie od pokrycia. W premultiplied, czyli powiązanym, kolor został już pomnożony przez alfę. Blender używa drugiej konwencji dla swojego renderu i compositingu. Węzeł Alpha Convert pozwala przejść z jednej do drugiej; operacja wykonana w straight musi wrócić do konwencji oczekiwanej na wyjściu. Podręcznik Blendera opisuje ten punkt.
Wybór nie jest kwestią preferencji jakości. Zdrowy obraz może wydawać się zniszczony, jeśli odczytujący zastosuje do niego niewłaściwą konwencję. Ustal, co zawiera plik, zanim dodasz węzeł konwersji.
Zobacz, co podwójne mnożenie robi z krawędzią
Przyjmijmy ilustracyjne obliczenie w świetle liniowym, nie roszcząc sobie prawa do opisu renderowanego piksela. Kolor straight czerwonej krawędzi wynosi (0,8; 0,1; 0,1) przy alfie 0,25. Jego kolor premultiplied wynosi więc (0,2; 0,025; 0,025). Na szarym tle (0,4; 0,4; 0,4) udział tła jest mnożony przez 0,75. Wynik wynosi (0,5; 0,325; 0,325).
Jeśli odczytujący potraktuje już premultiplied wartości jako straight, pomnoży je ponownie przez 0,25. Udział czerwieni maleje: krawędź ciemnieje. W drugą stronę, pominięcie oczekiwanego mnożenia może uczynić kontur nadmiernie jasnym. Sama alfa może jednak wyglądać poprawnie w czerni i bieli.
Ta demonstracja wyjaśnia jedną rodzinę frędzli; nie pozwala zdiagnozować wszystkich wad wyłącznie po wyglądzie. Wkomponowany kolor tła, złe zarządzanie kolorem lub efekt zastosowany po kompozycji mogą dać podobny rezultat. Zachowaj oryginalny plik, aby wrócić do wyjściowej interpretacji.
| Obserwacja | Pierwsza kontrola | Czego unikać |
|---|---|---|
| Ciemny brzeg na jasnym tle | Konwencja alfy i powtórzone mnożenie | Natychmiastowe erodowanie całego konturu |
| Jasna obwódka na ciemnym tle | Interpretacja i stare tło zmieszane z kolorami | Przyciemnianie całego obiektu |
| Kontury poprawne, ale ogólny odcień inny | Przestrzenie kolorów i przekształcenia | Zmiana alfy, by poprawić kolor |
| Wada tylko po zmniejszeniu | Resampling i kolejność efektów | Zatwierdzanie tylko w rozdzielczości źródłowej |
Przygotuj przezroczyste wyjście i kontrakt importu
Najpierw sprawdź, czy render rzeczywiście zawiera zamierzoną przezroczystość. Tło widoczne przez szklany obiekt pełni inną rolę niż brak tła. Następnie wybierz format wyjściowy z kanałem alfa i sprawdź zapisany plik, nie tylko Render Result. W notatce przekazania napisz: wymiary, przestrzeń kolorów, oczekiwaną konwencję alfa i docelowe tła.
Specyfikacja PNG definiuje alfa jako nieprzemnożoną. OpenEXR konwencjonalnie używa kolorów przemnożonych. Te konwencje to punkty wyjścia do wymiany; mimo to sprawdź używany eksporter i importer, zwłaszcza jeśli jakiś program pośredniczący przepisał kanały. Nie mnóż obrazu ręcznie drugi raz tylko dlatego, że jego rozszerzenie wydaje się niejednoznaczne. Specyfikacja PNG i wprowadzenie techniczne do OpenEXR wyjaśniają swój model.
W programie docelowym zaimportuj kopię bez korekcji. Wyświetl osobno kanały RGB i alfa, a następnie złóż obraz na uzgodnionych tłach. Uzasadniona konwersja powinna poprawić krawędzie bez sztucznego zmieniania nieprzezroczystych części.
Przykład: satynowa wstążka na trzech tłach
Ten przypadek jest ilustracyjny; opisane konwencje są zgodne z podręcznikiem Blender 5.2 cytowanym powyżej, bez zakładania, że ta wersja jest zainstalowana. Fioletowa wstążka ma otaczać tytuł na kremowym plakacie, czarnym wariancie i pomarańczowej karcie. Kierunek artystyczny wymaga cienkich pętli i lekkiego rozmycia ruchu. Pojedyncza kontrola na szachownicy pominęłaby dwie główne trudności: częściowo zakryte końcówki i bardzo jasne odbicia satyny.
Przygotuj trzy identyczne kompozycje, każdą na jednolitym tle. Sprawdź zewnętrzną krawędź, wnętrze pętli oraz obszar, w którym wstążka przecina tytuł. Oglądaj w rzeczywistym rozmiarze, a następnie w końcowym rozmiarze karty. Jeśli czarna linia pojawia się tylko na kremowym i pomarańczowym, sprawdź kanał alfa, zanim poprawisz maskę. Jeśli kremowy odcień utrzymuje się na czarnym tle, poszukaj koloru już zmieszanego z obrazem źródłowym.
Następnie wykonaj wymagane przeskalowanie i otwórz ponownie uzyskany eksport. W przypadku animacji dodaj krótki, ciągły fragment wokół najbardziej rozległego ruchu: kontur musi zachować swój kształt bez migotania. Oczekiwana kontrola nie polega na tym, że „nie ma ani jednego półprzezroczystego piksela”; takie piksele są niezbędne dla miękkiej krawędzi. Zgodność dotyczy ich spójnej integracji z trzema tłami.
Przetwarzać krawędzie bez odcinania tematu
Wróć najpierw do minimalnej kompozycji: obraz, interpretacja wejścia, tło, wyjście. Tymczasowo usuń akcentowanie, poświatę, korekcję kolorów i inne efekty. Jeśli krawędź znów będzie poprawna, włączaj operacje jedną po drugiej, aby znaleźć odpowiedzialny etap. Nie łącz automatycznej korekcji czytnika z ręczną konwersją, jeśli nie wiesz, co każda z nich robi.
Nieliniowa korekcja kolorów zastosowana do już przemnożonych kolorów może wymagać tymczasowej pracy w trybie straight. Wykonaj tę konwersję właściwym narzędziem, zabezpiecz powrót do konwencji kompozycji i sprawdź obszary o bardzo niskim alfa. Dzielenie samodzielnie przez wartość bliską zeru może wzmocnić niepożądane wartości. Filtr odkażania lub niewielka modyfikacja maski przychodzi dopiero po tej diagnozie, na kopii i w granicach akceptowalnych dla obiektu.
Na koniec oddziel kontur obiektu od jego efektów. Cień kontaktowy lub zewnętrzna poświata może musieć pozostać widoczna poza jego sylwetką. Zacieśnienie alfa w celu usunięcia obwódki może je usunąć. Jeśli te efekty mają być regulowane, przewidź ich przywrócenie w elementach uzgodnionych z odbiorcą; przewodnik po przejściach compositingu pomaga je wybrać.
Kiedy samo wycinanie tła już nie wystarcza
Załamanie światła i odbicia zależą od renderowanego otoczenia. Kanał alfa nie przelicza tego, co widziałoby szkło postawione przed nową scenografią. Wycięta butelka może więc mieć poprawny kontur, a jednocześnie zachować w swoim szkle wygląd starego tła. Przy dużej wymianie przetestuj scenę z docelową scenografią lub ustal odpowiedni podział na warstwy; nie obiecuj uniwersalnej przezroczystości.
Przed zatwierdzeniem sprawdź jasne i ciemne tła, drobne detale, efekty wychodzące poza obiekt oraz finalne skalowanie. Jeśli wynik jest animowany, zweryfikuj także ciągłość w czasie. Zachowaj złożoną referencję i wskaż odpowiadający jej plik przezroczysty, aby odbiorca mógł odróżnić oczekiwany render od własnego tła.
Plik może przejść tę kontrolę wizualną i zostać błędnie zinterpretowany w innej aplikacji. Notatka dotycząca importu jest więc częścią przekazania. W przypadku różnicy kontrastu obejmującej cały obiekt wróć do pliku i zajmij się spójnymi kolorami, zanim jeszcze dopracujesz maskę.
Twoje pytania.
Czy przezroczysty PNG trzeba ustawić jako premultiplied?+
Zgodnie ze swoją specyfikacją PNG przechowuje kanał alfa bez premultiplied. Program może wewnętrznie przekonwertować tę reprezentację. Prawidłowo zadeklaruj dane wejściowe i unikaj nieuzasadnionej dodatkowej konwersji.
Dlaczego szachownica wygląda poprawnie, a na białym tle pojawia się obwódka?+
Szachownica może maskować mało kontrastowy defekt. Złóż obraz na jasnym tle, ciemnym tle i rzeczywistym kolorze docelowym, aby sprawdzić kontur.
Czy trzeba utwardzić kanał alfa, aby krawędź była ostra?+
Nie zawsze. Częściowo przezroczyste piksele służą miękkim krawędziom, rozmyciu i drobnym detalom. Sprawdź interpretację, zanim zastosujesz erozję lub zmodyfikujesz maskę.
Czy kanał alfa pozwala dowolnie zastąpić tło za szkłem?+
Nie przelicza ponownie ani refrakcji, ani odbicia. W przypadku złożonego przezroczystego obiektu zmiana scenerii może wymagać ponownego renderowania lub specjalnie przygotowanych elementów.