STENCIL - Podejście Drugie


Stencil, zrozumiały dla wszystkich, brzmi jak hasło propagandowe z czasów ponurego komunizmu :). Piszę ten tutorial, ponieważ większość z was, a właściwie nie słyszałem ani jednego głosu, który potwierdziłby, ze tut Vinka jest całkowicie zrozumiały. Co nie znaczy, ze jest zły, wręcz przeciwnie jest bardzo dobry. Tutaj pozwolę sobie zacytować Vinka, ponieważ wydaje mi się że ta cześć napisana jest jasno i zrozumienie tego nie będzie dla ciebie problemem.


"W tym tutorialu chcę pokazać w jaki sposób skonstruowany jest materiał wykorzystujący narzędzie STENCIL i shader LAYERED SHADER. Materiał który stworzyłem wykorzystałem do nałożenia etykietki na prosty model dzbanka. Narzędzie STENCIL pozwala nam wzbogacić textury o dodatkowe warstwy przenikające się dzięki kanałowi ALPHA. W tym przykładzie STENCIL posłużył mi do kontrolowania koloru napisu i obwódki na etykietce, oraz wykorzystania textury proceduralnej GRANITE jako tła etykietki. Natomiast LAYERED SHADER umożliwił mi zastosowanie dwóch różnych shaderów: do etykietki BLINN, a do powierzchni dzbanka PHONG."


Zanim przystąpimy do pracy zrób sobie w Photo Shopie potrzebne tekstury, ja zrobiłem takie:)


Postaram się napisać go tak, żeby wszyscy zrozumieli i troszkę inaczej niż zrobił to Vink. Czyli krok po kroku.
Nie będę robił dla tego przykładu jakiegoś wymyślnego obiektu, wystarczy jak posłużymy się zwykłym walcem:).
Zacznij od otwarcia okna Hypershade, w nim wybierz Show Bottom Tabs Only, tak jak na rys.R_1.


Będziesz potrzebował trzy materiały, jeden z nich będzie kolorem walca (blin), z drugiego zrobisz tło naklejki (phong) a trzeci pozwoli złożyć ci to wszystko razem (Layered Shader) rys.R_2.


Teraz przejdź do zakładki Create Textures, ponieważ potrzebujesz trzy textury, dwie które stanowią kanał alpha i jedna która będzie tłem etykietki. Kliknij dwa razy na węzeł File, aby utworzyć dwa węzły pod alpha, nazwij je "alpha" i "naklejka_alpha", kliknij teraz na węzeł Mountain, będzie to tło naklejki, nazwij go "naklejka_tlo" tak jak na rys rys.R_3.

Kliknij na węzeł alpha, otworzy ci się Attributes Editor w polu image name wybierz ikonie koperty i załaduj swoją alphe, zrób to samo z węzłem naklejka_alpha, ale tu załaduj swoja naklejkę rys.R_4.


Przejdź do zakładki Utilities i kliknij na węzeł Stensil, powinien pojawić się w work area rys.R_5.


Wybierz teraz węzeł place2dTexture1 przy węźle alpha rys.R_6 i w ciśnij klawisz "delete" na klawiaturze. Powinien zniknąć, jak nie to cos źle zrobiłeś. Teraz utworzymy wspólny place2d dla obu textur alpha, przyłączony do nich tylko przez outUV > UVcord.

Kliknij prawym przyciskiem na węzeł place2dTexture2 i trzymając go wciśniętego najedź na węzeł alpha, pojawi ci się popmenu, wybierz z niego other rys.R_7,

otworzy się okno connection editor. W kolumnie Outputs zaznacz OutUV a w kolumnie Inputs UvCoord rys.R_8, w ten sposób stworzyłeś potrzebne łączenie, czyli connection, dla obu węzłów. Możesz utworzyć również wspólny UVcord z węzłem naklejka_tlo, jak ja to uczyniłem nie jest to jednak konieczne rys.R_8a.


Teraz zrób connection pomiędzy naklejka_tlo a stencil identycznie j.w tylko w connection edytorze zaznacz dokładnie jak na rys.R_9.

Pora na connection pomiędzy naklejka_alpha a stencil. Połącz jak na rys.R_10.

Połączenie to umożliwia kontrolowanie koloru napisu i tła etykietki. Nadszedł czas na stworzenie dwóch węzłów projection i jednego place3dTexture. Wejdź do AttributesEditor węzła projection1 kliknij na niego dwukrotnie i zmień w Projection Attributes Proj Type na Cylindrical rys.R_10a,

zrób to samo z węzłem projection2. Pierwszy węzeł projection1 za pomocą poznanego już sposobu łączymy z węzłem alpha rys.R_11,

zrób to samo z węzłem stencil i projection2 jak na rys.R_12.

Zajmij się teraz węzłem place3dTexture, który musisz połączyć z dwoma węzłami projection, Kliknij prawym przyciskiem na węzeł place3dTexture i trzymając go wciśniętego najedź na węzeł projection1 i zrób connection jak na rys. rys.R_13.

Zrób to samo łącząc place3dTexture z projection2 rys.R_14.

Musisz teraz połączyć U V węzłów projection żebyś mógł przesuwać, skalować czy rotować jednocześnie naklejkę z napisem, robimy tak jak na rysunkach rys.R_15 i rys.R_16.

Ok, teraz zrób połączenie projection2 z naklejka_all rys.R_17.

No zblżasz się do końca, kliknij dwukrotnie na layeredShader1 otworzysz w ten sposób AtributesEditor(nazywajmy go w skrócie AE) tego węzła i teraz rób dokładnie jak pisze: kliknij środkowym przyciskiem myszki na węzeł naklejka_all, trzymając go wciśniętego przenieś węzeł w pole Color w attributsEditor węzła LayeredShader1, utworzy ci się odpowiednie połączenie, w podobny sposób przenieś węzeł kolor walca w pole otoczone czerwoną ramką, za niebieską ikoną reprezentująca węzeł naklejka_all, zrób to samo z węzłem projection1 ale przenieś go do pola Transparency rys.R_18.

Masz prawie gotowy materiał, ale musisz go troszkę upiękrzyć :)
Kliknij dwukrotnie na węzeł naklejka_tlo, otworzysz AE tego węzła, zmień w dowolny sposób jego wygląd, ja zrobiłem to tak jak na rys.R_19.

Zmień teraz kolor walca np. na niebieski rys.R-20.

Twoje connection w Hypershade powinny wyglądać tak jak na rys.R_20a.


Ok, czas na jakiś obiekt, zrób nurbs cylinder, powiększ go do dowolnego rozmiaru i przydziel mu swój materiał, czyli najprościej zaznacz cylinder przejdź do Hypershade, kliknij prawym myszy na Layered Shader1 i z popmenu wybierz Assign Materiał To Selection. Poustawiaj sobie według uznania w Render Globals np. Reslution 640x480, Anti-aliasing Quality na Production Quality, kliknij dwukrotnie na węzeł place3dTexture w AE kliknij najpierw na Interactive Placement a potem na Fit to group bbox rys.R_21

i wyrenderuj walec rys.R_22.

Jak widzisz naklejek jest kilka, jest na to sposób żeby zbędne wyeliminować (jak to ładnie Vink napisał pozbyć sie efektu multiplikacji) kliknij dwukrotnie na węzeł Place2dTexture i w AE odznacz Wrap U i Wrap V rys.R_23.

Wyrenderuj walec, widzisz teraz tylko jedna etykietkę:) MOZESZ ZMIENIC JEJ POLOZENIE I WIELKOSC KLIKAJAC DWUKROTNIE NA WEZEL place3dTexture POJAWIA CI SIE NA WALCU MANIPULATORY MAPOWANIA ETYKIETKI, MANEWRUJAC NIMI MOZESZ USTAWIC JA W DOWOLNYM MIEJSCU POD DOWOLNYM KATEM I WIELKOSCIA rys.R_24.

Mam nadzieje ze tut ten będzie zrozumiały dla początkujących. Możesz zapisać tak stworzony materiał i wykorzystywać go w przyszłości zmieniając tylko tekstury i tło naklejki uzyskasz wiele jej wariantów. Zapisujesz wybierając w polu Feli w hypershade (przy zaznaczonym węźle LayeredShader) Export Selected Network, podajesz ścieżkę gdzie ma go zapisać, gdy chcesz go wczytać w innym projekcie w File w oknie Hyperszade wybierasz import i go wczytujesz.

 

Powodzenia Szem

 

Autor: Szem

30 listopada 2002

Tutorial napisany dla: www.maya3d.users.pl