Cycles – Redukcja szumu 29

Oto od dawna oczekiwany materiał na temat sposobów redukcji szumów w rendererze Cycles.

Zebrałem i opowiedziałem o chyba wszystkich znanych mi sposobach na uczynienie prac bardziej gładkimi. Usuwanie szumu nazywa się odszumianiem, i jest zadaniem złożonym. Metoda postępowania zależy od sytuacji. Pokazuję, jak usunąć szum za pomocą ogólnych metod, a potem rozpatrujemy szczególne przypadki: światło lampy w pobliżu ściany, powierzchnie typu glossy, materiały świecące z niewielkich powierzchni, szkło i kaustyka, metody odszumiania światła odbitego oraz kontrola zaniku światła w lampach. Na końcu opowiadam też o metodzie pokazanej przez największego polskiego mistrza nodów, Bartka Skorupę, który niedawno w cgcookie zaprezentował bardzo sprawną metodę odszumiania całościowego renderów za pomocą kontroli rozmycia w poszczególnych przebiegach renderowania (czyli w tzw. render passes) za pomocą rozmycia bilateralnego. Jeżeli nic z tego nie zrozumieliście, to niech to będzie zachętą do obejrzenia tego materiału!

Ten tutorial przygotowywałem przez parę dni i zajęło to naprawdę wiele pracy. Dlatego w trakcie być może zauważycie cięcia i sklejenia. Poza tym blender, którego używałem z niewiadomych powodów nie pokazywał podglądu w nodach, więc musiałem zmieścić się na malutkim okienku samego noda. Przepraszam za usterki :) I zapraszam do oglądania!

29 thoughts on “Cycles – Redukcja szumu

  1. Odpowiedz mateczek Gru 3,2016 23:39

    a takie prążki na wy renderowanym obrazie to też wada ??

  2. Odpowiedz Arek Paź 31,2016 11:42

    Rewelacja!!! :) Mam nadzieję że te informacje pomogą mi w walce z szumem w nocnych scenach :) Dziękuję i pozdrawiam serdecznie :)

    • Odpowiedz piotao Lis 1,2016 13:11

      Cieszy mnie tak entuzjastyczna reakcja :) Dobra wiadomość jest taka, że w nowszych wersjach Cycles istnieją jeszcze dodatkowe, fajne sposoby na redukcję szumów. Kto wie? Może kiedyś o nich opowiem? :)

  3. Odpowiedz nezumi Paź 9,2014 10:56

    Kapitalny film ale nieco juz odstaje od nowych wersji. Byloby super zobaczyc zaktualizowana wersje – szum jak byl tak pozostal problemem w cycles.

  4. Odpowiedz Krzysztof Lut 25,2014 11:21

    Mam pytanie: czy zna Pan sposób na autozapis obrazu z okna preview innego niż printscreen ? Chciałbym tak jak Pan to podał w filmie – ustawić ilość próbek na 0, podgląd (zamiast renderingu) i zobaczyć co z tego wyjdzie, ale mieć możliwość zachowania renderingu, jeśli rezultat mnie zadowoli. Mam bardzo złożoną scenę – będę wdzięczny za pomoc.

    • Odpowiedz piotao Lut 25,2014 13:00

      Nie znam innego sposobu. Możesz nagrywać całe okno Blendera za pomocą Alt+F3 ale to zbyt wiele obrazków. Zamiast printScreen możesz użyć fajnego programiku, który nazywa się Shutter (pod Linuxem) – siedzi sobie w tray’u a gdy klikniesz go prawym, możesz wybrać różne metody zrobienia zrzutu. Ja wybieram „Obszar” i mogę myszą zaznaczyć interesujący mnie fragment, a potem od razu dostaję zrzut zapisany do pliku lub umieszczony w schowku, lub otwarty w oknie. Mogę go nawet przesłać na serwisy hostujące obrazki, np. imgg.ur lub innne. To najwygodniejszy sposób jaki znalazłem.
      Jest też wtyczka Auto Save Render – po każdym F12 gdy ukończysz render zapisywany jest on w katalogu auto_saves, ale to też nie jest zapis z Widoku3D.

  5. Odpowiedz Szymon Lut 23,2014 17:57

    Panie Piotrze, Znam prosty sposób redukcji szumu polegający na ustawieniu odpowiednich rzeczy w composition i ustawieniach renderu. Sprawdziłem i wszystko działa. Czy mógłbyś spolszczyć ten poradnik?

    • Odpowiedz piotao Lut 23,2014 22:07

      O, to Peter, gościu siedzi w Grecji, znam Go trochę. Oczywiście, mogę przygotować jakiś tego typu materiał, być może nie od razu, ale… dopisuję do TODO. :) Dzięki za link!

  6. Odpowiedz mufok Kwi 19,2013 13:50

    Dlaczego w moim blenderze nie ma sampling as lamp w settings. Czy ta opcja jest tylko przy renderowaniu na gpu?

  7. Odpowiedz pawel Lut 5,2013 20:24

    serdecznie dziekuje za ten niezwykle wazny material, wlasnie pracuje nad pewna wizualizacja wnetrza na studiach, na pewno cos podesle jak juz skoncze, jeszcze w tym miesiacu ;)

  8. Odpowiedz ADDJAR Sty 27,2013 21:38

    Mam takie pytanie: chodzi o końcówkę kursu tak ok 48:45
    Dlaczego dwie wartości Diffuse Direct i Diffuse Indirect dodajemy a przez Diffuse Color mnożymy ?
    Dlaczego mnożenie? 

    • Odpowiedz ADDJAR Sty 27,2013 21:39

      A tak w nawiasie, świetny kurs!. I pozostaje mi tylko podziękować. 

      • Odpowiedz ADDJAR Sty 31,2013 07:11

        Wielkie dzięki Arek, przyjmę to za wzór i twoją postawę również ;)

      • Odpowiedz piotao Sty 31,2013 20:29

        To niestety nie wyjaśnia, dlaczego sumę świateł mnoży się przez kolor. A nie na przykład dzieli. :)

        • Odpowiedz ADDJAR Sty 31,2013 20:43

          Co prawda to prawda Piotrze, ale na dobrą sprawę logarytmów też nie potrafiłem przełożyć na przykłady z życia wzięte.
          Dlatego odpuszczam żeby nie robić zatoru

        • Odpowiedz Bartek Skorupa Lut 2,2013 11:18

          Spróbuję szybko wyjaśnić:
          Trzy składowe:
          DIR – direct light, czyli światło bezpośrednie
          IND – indirect light, czyli światło pośrednie, lub odbite
          COL – kolor materiału.

          Do każdego punktu dochodzi światło, które jest sumą światła DIR i IND. To raczej proste i oczywiste.
          Tenże punkt ma swój kolor. Załóżmy, że kolor ma wartość 0.7, czyli COL = 0.7
          Jeżeli na taki kolor nie padnie żadne światło (DIR + IND = 0.0), to będzie po prostu ciemność. Wartość wyniesie 0 niezależnie od tego, jaki kolor ma dany punkt. Nieoświetlony punkt pozostanie czarny (wartość 0).

          Załóżmy teraz, że:
          DIR = 0.4
          IND = 0.2

          Suma światła dochodząca do naszego punktu wynosi 0.4+0.2=0.6.

          To światło reaguje z wartością naszego koloru, czyli COL = 0.7

          Jeżeli suma światła wyniosłaby 1.0, to widoczny kolor miałby wartość 1.0 * 0.7 = 1.0.
          Gdy suma śwyatła wynosi 0.0, to 0.0*0.7 = 0.0.

          W naszym przypadku suma światła to 0.6, więc mamy 0.6*0.7 = 0.42.

          Chodzi o to, że wyjściowy kolor nie jest oświetlony w stu procentach, lecz jedynie w 60%. Zatem wynikowy kolor ma wartość 60% koloru wyjściowego. (światło razy kolor).

  9. Odpowiedz Danton Sty 27,2013 20:25

    Hm kiedyś właśnie chciałem ci Mentoris to jakoś w ten sposób jak teraz to stwierdziłeś powiedzieć ci o wartości tego renderera ale wtedy nie potrafiłem jakoś dobrze tego przekazać.

  10. Odpowiedz Mentoris Sty 27,2013 18:35

    Bardzo mądry i pożyteczny tutorial, ale nie da się go całego ogarnąć na jeden raz. Trzeba go studiować, a nie oglądać. Świadczy to jednocześnie o tym że renderowanie w Cycles nie jest takie proste i jest właściwie sztuką.

  11. Odpowiedz piotao Sty 27,2013 00:50

    :)
    Na zdrowie! Aby nasze rendery były jeszcze lepsze!

  12. Odpowiedz Danton Sty 26,2013 23:32

    Rewelacyjny prawdziwie pomocny tutorial jeden z fundamentów pracy z cycles.

    Wielkie dzięki Piotrze

A Ty co o tym myślisz?