Dlaczego węzeł Alpha Over rozjaśnia mój obraz?
W projekcie Cycles w Blenderze 2.9 chcę, aby wszystkie obiekty otrzymywały białe światło z otoczenia, więc ustawiłem Właściwości świata -> Powierzchnia -> Kolor na biały.
Ale chcę, aby tło końcowego wyniku było ciemnoniebieskie, więc sprawdziłem Właściwości renderowania -> Film -> Przezroczysty i użyłem węzła Alpha Over w kompozytorze, aby uzyskać niebieskie tło.
Oto oryginalny wyrenderowany obraz z przezroczystym tłem:

A to jest obraz z niebieskim tłem wkomponowanym w:

Jak widać, tryb Alpha Over sprawia, że obraz jest znacznie jaśniejszy. Ale tego nie chcę: chcę tylko oryginalny obraz na niebieskim tle.
Co próbowałem:
- Zaznaczenie opcji „Convert Premul” (nie powinno być potrzebne, ponieważ renderowany obraz zawiera już wstępnie zwielokrotniony kanał alfa)
- Ręczna zmiana „Fac” (która ma nieoczekiwane zachowanie: potrzeba bardzo małej wartości (0,0001), aby pierwszy plan był przezroczysty. Oczekiwałem, że pierwszy plan będzie przezroczysty w 50% przy Fac = 0,5)
- Podłącz wyjście Alpha węzła Render Layers do wejścia Fac węzła Alpha Over (nie powinno być potrzebne, ponieważ kanał alfa powinien już znajdować się na samym obrazie)
- Ustawienie jasności lampy Sun, która jest również w mojej scenie, na 0. To wszystko nie rozwiązało mojego problemu.
Moje pytanie: jak uzyskać renderowany obraz na niebieskim tle bez rozjaśniania renderowanego obrazu?
Każda pomoc jest mile widziana!
Odpowiedzi
Jedną z rzeczy, które możesz zrobić, aby zmniejszyć nadmierną jasność w częściach półprzezroczystych, jest użycie węzła Alpha Convert Node w Compositor . Umieść go między warstwami renderowania a Alpha Over i ustaw na „Straight to Premul”. To znacznie zmniejsza jasność w przezroczystych obszarach.
Przezroczystość w renderowaniu nadal nie będzie wyglądać jak przezroczystość w węźle przeglądarki .
Aby uzyskać taki wynik, musisz zmniejszyć wartości RGB obrazu, na przykład za pomocą węzła Kolor> Mieszaj z włączoną opcją Zacisk . Następnie możesz pomnożyć obraz czystą bielą lub dodać czystą czerń, a wtedy na wyjściu wszystkie jasne piksele zostaną zaciśnięte na biało i działa na to przezroczystość alfa. Chodzi o to, że jeśli tego chcesz, to dlaczego jasność jest tak wysoka?
Chociaż powiedziałeś, że ustawiłeś siłę lampy słonecznej na 0, a nawet to nie zmieniło się zbytnio, plik, który dostarczyłeś, miał słońce o sile 1000. W Blenderze, słońce nawet przy sile tylko 10 jest bardzo jasny.
Tak więc renderowanie pliku z sześcianem i słońcem 1000 spowodowało, że wokół sześcianu pojawiły się półprzezroczyste obszary o wartościach RGB powyżej 150 lub nawet 200 przy przezroczystości 60% -80%, co daje piksele znacznie przewyższające biel. I dlatego wszystko jest o wiele jaśniejsze niż w widoku tła.
Aby uzyskać pożądany efekt, należy ustawić słońce znacznie niżej. Jeśli twoje obiekty wyglądają na szare zamiast na białe i dlatego zwiększyłeś wartość słońca, spróbuj ustawić Przekształcenie widoku> Standardowy zamiast Filmowy w Zarządzaniu kolorami .