Skip to main content

Tworzenie renderingu okluzji otoczenia w programie Maya

The Future of VR and Games (Może 2025)

The Future of VR and Games (Może 2025)
Anonim

Tutaj, w kąciku gadżetów, przepisy nie mają zbyt dużego sensu, ale przyszło mi do głowy, że podczas drugiej nocy, gdy szukałem porady na temat gotowania kurczaka z papryczek cytrynowych, mogłem rozpocząć serię z innym rodzajem przepisu. -Shader receptur.

Całe "książki kucharskie" zostały napisane na materiałach i cieniach w Maya, UDK, 3DS Max, Vray, itp.

Jest to coś, z czym wielu początkujących ma problemy i nie bez powodu! Skorygowanie szeregu tajemnych parametrów, takich jak "siła zwierciadła" i "masa rozproszona" w celu naśladowania materiałów z prawdziwego świata, takich jak drewno, szkło, kamień lub płytki ceramiczne, nie jest łatwym zadaniem.

Tak więc jesteśmy.

Począwszy od okluzja otoczeniazaczniemy wprowadzać pewne ustawienia aplikacji dla niektórych typowych materiałów w świecie rzeczywistym, które są trudne do przyswojenia. W tej serii będziemy głównie używać Mayi, chociaż możemy czasem zmierzyć się z zestawem Unreal Development Kit. Jesteśmy podekscytowani tą serią i oczekujemy, że nauczysz się pisać tak samo, jak ją czytasz!

01 z 02

Czym jest okluzja otoczenia?

Nie pozwól, by nazwa Cię oszukała - ambientowe zamknięcie jest rzeczywiście dość prostym materiałem do zbudowania i jest niezwykle ważne.

Wykorzystuje się nie tylko (całkiem uniwersalnie) do renderowania obrazów w toku, ale jest również często wykorzystywany jako przepustka podstawowa w kompostowaniu i malowaniu tekstur, ponieważ pomaga uwydatnić szczegóły i "naziemne" obiekty w scenie poprzez ujednolicenie cieni .

Okluzja otoczenia jest formą samosłonięcia materiału, co oznacza, że ​​działa, nawet jeśli nie ma żadnego oświetlenia w scenie. Teoretycznie jest to szczątkowe przybliżenie globalnej iluminacji i ma na celu naśladować sposób, w jaki światło rozprzestrzenia się w pomieszczeniu lub otoczeniu.

Okleiny okluzji otoczenia mają charakterystyczny "miękki" wygląd z subtelnym przyciemnieniem w dowolnym miejscu, w którym dwie powierzchnie zbliżają się do siebie lub stykają (rogi pomieszczenia, spód przedmiotów, drobne szczegóły itp.). Obrazy okluzji w otoczeniu były czasami nazywane "glinianymi" z powodu ich podobieństwa do modelowania gliny.

Oto model, który zrobiłem na zeszłorocznej pracowni, która wykorzystuje ambient occlusion, aby pokazać formę modelu (koncepcja broni autorstwa Diego Almazana).

02 z 02

Tworzenie modułu cieniującego otoczenia:

Tworzenie zewnętrznego shadera okluzji dla podstawowych obrazów postępu jest dość łatwe i nie wymaga żadnych promieni UV, map tekstur ani oświetlenia.

Istnieje wiele sposobów na zastosowanie efektu dla nieco innych rezultatów, ale ten, który tu przedstawię, jest ładny i prosty, wymagający tylko jednego węzła Mental Ray i podstawowego materiału Lamberta.

Oto krótkie wyjaśnienie krok po kroku.

Otwórz okno Hypershade i utwórz nowy materiał Lambert.

Nadaj materiałowi nazwę - zwykle używam czegoś takiego ambientOcclusion_mat.

Kliknij dwukrotnie materiał, aby otworzyć jego atrybuty materiałowe. Tutaj ustawiamy większość parametrów dla modułu cieniującego.

Domyślnie kolor rozproszony materiału jest neutralny szary, ale nie chcemy, aby nasze jasne pasy uległy zniszczeniu, więc zamierzamy przesunąć wartość koloru w kierunku ciemniejszego końca spektrum. Używamy 0, 0, .38 dla wartości HSV dla atrybut koloru , ale jest to kwestia osobistych preferencji.

Następną rzeczą, którą musimy zrobić, jest podłączenie węzła okluzji otoczenia do atrybutu żarzenia materiału.

Kliknij pole wyboru w szachownicę obok żarzenie się wkład. Spowoduje to wyświetlenie okna węzła renderowania.

Pod Psychiczny Promień tab, kliknij tekstury i znajdź mib_amb_occlusion na liście. Kliknij go, a węzeł otworzy się w edytorze atrybutów po prawej stronie ekranu.

Powinieneś zobaczyć listę atrybutów - ważne dla nas są próbki, jasne / ciemne, rozłożone i maksymalny dystans, jednak jedyną rzeczą, którą zmienimy, jest liczba próbek.

W węźle okluzji otoczenia liczba próbek kontroluje ilość szumu w renderingu.

Pozostawienie próbek w wieku 16 lub 32 będzie stosunkowo ziarniste, natomiast zwiększenie wartości do czegoś takiego jak 64 lub 128 będzie bardzo płynne. 32 próbki są dobre do testowania, ale jeśli mam zamiar wyświetlać obraz, zwykle używam 64 lub 128.

Wypróbuj kilka renderów na różnych poziomach próbek, aby poczuć różnice - możesz znaleźć ziarnisty wygląd na niższym końcu spektrum.

Oto obraz porównania, który zrobiłem przy użyciu środowiska zewnętrznego, które wymodelowałem przez chwilę, pokazując różnicę między renderingiem bazowym Maya i renderowaniem okludów otoczenia z 64 i 128 próbkami. Zobacz, o ile lepiej wygląda obraz przy zamknięciu otoczenia?

Możesz także grać z innymi atrybutami, jeśli chcesz:

Jasne i ciemne kontrolować minimalne i maksymalne wartości w renderingu. Jeśli zauważysz, że twoje rozjaśnione światła lub twoje cienie są miażdżone, możesz użyć tych suwaków, aby to zrekompensować. Rozpiętość i maksymalna odległość zmieni odległość opadania / okluzji między twoimi wartościami jasnymi i ciemnymi.

Proszę bardzo! Mam nadzieję, że nauczyłeś się trochę o okluzji otoczenia i jak można go wykorzystać jako przyjemny materiał do prezentacji scen 3D. Daj mi znać na blogu, jeśli masz jakieś pytania!