Witam, postanowiłem zrobić tego tutoriala bo kilka osób(aż dwie) pytało się o niego w temacie o modyfikatorze unwrapuvw.
Kto chce może sobie ściągnąć model którego użyłem w tutorialu : http://www.zshare.net/download/4876309471054c/
Oczywiście trudno jest przedstawić sposób sculptowania w zwykłym pisanym tutorialu ale postaram się to jakoś opisać gdyż stworzenie dobrych map nierówności jest w przypadku tego typu modeli bardzo ważne. Mam nadzieję że komuś się przyda.
Na początek powiem jak przygotować model do zbrusha.
1. Włączamy 3ds max'a i importujemy nasz model. Zaznaczamy ciało dinozaura -objBody i przechodzimy do panelu modify klikamy
prawym na editable mesh i z menu podręcznego wybieramy convert to: Editable poly.
Teraz do tego obiektu dodajemy mod. Unwrap UVW i w zakładce parameters klikamy na przycisk Edit. Włączył się edytor uvw, widzimy w nim rozłożone uv'ki, jedyne co musimy zrobić to z menu Tools wybrać Render UVW Template i wyrenderować siatkę która posłuży nam jako podkład do photoshopa. Ustalamy rozdzielczość na co najmniej 4096x4096 zmieniamy Mode na solid, Fill kolor na biały i Edge kolor na czarny po czym klikamy na przycisk Render UVW Template. Zapisujemy render pod nazwą siatka w formacie jpg.
Rozdzielczość textury jest duża ale z powodu takiego mapowania większość jej powierzchni zostaje nieprzypisana żadnym współrzędnym uvw, jeżeli więc model miał by być widoczny z bardzo bliskiej odległości można jeszcze zwiększyć rozdzielczość textury. Ja zostanę przy 4096x4096.
Zamykamy edytor uvw, w stosie modyfikatorów klikamy prawym przyciskiem myszy na mod. Unwrap UVW, wybieramy collapse to i w oknie które się pojawi klikamy na Yes. Mając cały czas zaznaczony obiekt objBody przechodzimy do menu File i wybieramy Export Selected..., zapisujemy model pod dowolną nazwą w formacie .OBJ. Ważne żeby w opcjach exportera zaznaczyć w sekcji Geometry Faces: Polygons i Vertex scale powinno być ustawione na 1. Ok model jest przygotowany pod zbrusha.
2. Zanim przystąpimy do działań w zbrushu przygotujemy kilka map alpha których użyjemy do uzyskania faktury skóry dinozaura. Alphy takie można namalować samemu ale łatwiej posłużyć się zdjęciami skóry i przerobić na alphę ich fragmenty. Najlepszymi kandydatami na dawców skóry dla dinozaura będą słonie, nosorożce, wielkie żółwie, warany i krokodyle :)
Otwieramy obrazek w photoshopie(ja robię w cs 3 ale większych różnic nie ma w porównaniu do starszych wersji). Usuwamy kolor (Obraz>Dopasowania>Czarno-biały...) możemy pobawić się suwakami żeby uzyskać jak najlepszy kontrast pomiędzy pęknięciami skóry(wgłębieniami) a wypukłościami. Po usunięciu koloru tworzymy nową warstwę i wypełniamy ją czarnym kolorem, kopiujemy także warstwę tło i umieszczamy ją na samej górze lub jeżeli interesuje nas tylko kawałek obrazka zaznaczamy go narzędziem lasso i wciskamy ctrl_j (warstwa nowa przez kopiowanie). Teraz wybieramy narzędzie gumka(E), ustawiamy jej pędzel na miękki i zmniejszamy krycie na 30. Zwiększamy rozmiar gumki na około 1/3 szerokości obszaru skóry który wycieliśmy(lub jak nie wycinaliśmy to o szerokości 1/3 obszaru który myślimy pozostawić) i gumkujemy (na górnej warstwie) krawędzie żeby uzyskać miękki przejście między kawałkiem skóry a czarnym tłem. Spłaszczamy obraz (Warstwa>Spłaszcz obraz) i możemy pobawić się poziomami żeby jeszcze poprawić kontrast naszej alphy (Obraz>dopasowania>poziomy...). Na koniec korzystając z narzędzia do kadrowania© pozostawiamy na obrazku tylko to co nas interesuje jak mamy za dożo czarnego dookoła fragmentu skóry.
Zapisujemy naszą alphę w pliku .psd. Teraz możemy ją zaimportować do zbrusha i sprawdzić jak działa. Generalnie robiąc alphy pamiętajmy że kolor czarny jest kolorem maskującym i w miejscach na alphie gdzie jest ciemny kolor nastąpi znikome lub mało widoczne działanie pędzla.
Jak nie znajdziemy jakiś super zdjęć które można by na alphę przerobić to oczywiście można ją sobie samemu narysować. Dla skóry najłatwiej wypełnić obrazek białym kolorem i czarnym pędzlem namalować jakieś pęknięcia i wgłębienia na skórze. Jak chcemy rysować same głębokie pęknięcia to malujemy je białym pędzlem na czarnym tle. Ja tak namalowałem kilka alph które później wykorzystam. A to kilka przykładowych widać które są ze zdjęć a które własnej roboty:
3. Teraz włączamy zbrusha. Możemy wskazać nasz obiekt przy włączaniu programu (Open Model (ztl or obj)) lub po jego włączeniu w menu Tool które znajduje się po prawej stronie. Klikamy tam na przycisk import i wskazujemy wyeksportowany wcześniej z maxa obiekt w formacie .obj. Dla całkiem zielonych powiem że to co zrobimy w zbrushu zapisujemy w menu tool jako .ztl nie w menu Document. Model dinozaura pojawia się w palecie tool, teraz trzeba go narysować w obszarze roboczym. W tym celu klikamy lewym przyciskiem myszy na canvas i przeciągamy w którąś stronę żeby nadać mu skalę i ustawienie. Jeżeli podczas rysowania przytrzymamy shift to model będzie można obracać co 45 stopni co ułatwi równe narysowanie chociaż to nie ma żadnego znaczenia jak się go narysuje.
Teraz wciskamy T albo klikamy na Edit (jest po lewej stronie nad canvasem). Obiekt jest teraz gotowy do sculptowania ale zanim zrobimy cokolwiek przejdźmy do menu tool(jest cały czas po prawej stronie) i rozwińmy zakładkę Morph Target. Jedyne co musimy tu zrobić to kliknąć na przycisk StoreMT. Po co to robimy? A no po to że podczas edycji naszego obiektu zmieni się na pewno jego kształt i na koniec jak skończymy dodawać detal na najwyższym subdivision levelu i przejdziemy na poziom najniższy to będzię się on różnił od modelu który zaimportowaliśmy do zbrusha. Ponieważ nie będziemy exportować modelu z zbrusha do maxa mapa displacement musi być wypalona dla modelu który zaimportowaliśmy do zbrusha a którego będziemy renderować w maxie. Morph target pozwoli nam powrócić do początkowego kształtu modelu na 1 sdiv i dla niego wypalić cały detal na mapce displace.
Zanim przystąpimy do sculptingu podam kilka skrótów które jeżeli nie ułatwią to na pewno przyspieszą nawigację w obszarze roboczym zbrusha. Ok no to po kolei:
-przybliżanie(zoom) wciskamy lewy alt klikamy lewym przyciskiem myszy w puste miejsce w obszarze roboczym (nie na model) i trzymamy lmb wciśnięty puszczamy alt i mając całt czas wciśnięty lmb poruszamy myszą góra dół.
-obracanie(rotate) wystarczy kliknąć lewym w puste miejsce kiedy kursor zmienia się na białą zakręconą strzałkę i można obracać. Jak nie ma pustego miejsca bo bardzo przybliżyliśmy model to przesuwamy kursor poza białą kwadratową obramówką canvasa.
-przesuwanie(move) najeżdzamy kursorem na puste miejsce wciskamy i przytrzymujemy lewy alt i przesuwamy mysz. Jak nie ma pustego miejsca to za obramówkę tak jak przy obracaniu.
Dodatkowo jak przytrzymamy shift podczas obracania to model ustawi się nam dokładnie przodem, bokiem, ... zresztą sami spróbujcie bardzo to przydatne przy maskowaniu.
Dobra po takim wstępie możemy przejść wreszcie do sculptowania. Ponieważ dinozaur jest symetryczny włączamy symetrię znajdziemy ją w menu Transform i tam klikamy na odpowiednią oś w tym przypadku x albo wciskamy klawisz x. W menu tool rozwijamy zakładkę Geometry i wciskamy przycisk Divide albo wciskamy ctrl-d. Siatka się zagęściła nie dodamy tu jakiegoś detalu bo jest ona wciąż niezbyt gęsta ale możemy delikatnie podkreślić fałdy nad "rączkami" zarys mięśni na udach i łydkach uraz uwydatnić lekko szczegóły głowy za oczami oraz grzbiet. Chyba każdy wie jak się sculptuje w zbrushu no ale dla zasady powiem że nad canvasem mamy przyciski Zadd i Zsub w pierwszym trybie pędzel wyciąga siatkę w drugim na odwrót wciska ją innymi słowy pierwszym rysujemy wypukłości a drugim wklęsłości. Żeby szybko przełączać się między trybami mając wybrane np. Zadd wciskamy i trzymamy lewy alt i mamy Zsub. Parametr ZIntensity kontroluje siłę działania pędzla a Draw Size jego rozmiar. Proponuję siłę pędzla ustawić na trochę mniejszą niż standardowe 25 lepiej maznąć parę razy słabszym pędzlem niż raz silnym szczególnie jak sculptujemy myszką.
Pamiętajcie żeby na niskich subdiv nie szaleć zbytnio ze sculptowaniem żeby model nie zmienił za bardzo formy. Wgłębienie wzdłuż ogona zrobiłem używając lazy mouse jest to brush który umożliwia rysowanie równych linii(i nie chodzi tu o kształt tylko o sposób deformacji siatki, lazy mouse dodaje detal równiutko na linii którą zakreślimy ) że tak powiem, włączamy go w menu Stroke klikając na lazy mouse i tak samo go wyłączamy.
Tak wygląda model po sculpcie na subdiv 2:
Pora dodać kolejny poziom podziału czyli wciskamy ctrl-d. Tutaj siatka jest na tyle gęsta że możemy się zająć większymi fałdami głową, palcami u stóp okolicami szyi i obojczyków. Jeżeli coś za ostro zarysujemy można użyć smooth brusha do wygładzenia siatki- klawisz shift, obwódka pędzla zmieni się z czerwonej na niebieską. Cały czas pracujemy ze standardowym brushem i alphą, stroke prawie zawsze FreeHand.
Ponownie zagęszczamy siatkę teraz przy ponad trzystu tysiącach poly dodamy większość szczegółów które pozostały do dodania i podkreślimy wszystko to co zarysowaliśmy na poprzednim levelu. Właściwie cały czas sculptowałem standardowym brushem i alphą z Zintensity ustawionym na 14-20 i często zmieniałem jego rozmiar chociaż cały czas oscylował on w wartościach 9-15. Wygodny sposób na zmiane wielkości pędzla przycisk S można też tak jak w photoshopie nawiasami kwadratowymi ale wartości zmieniają się dość znacznie z każdym wciśnięciem klawisza. Przy takim podziale siatki dało się już zrobić te grube fałdy skóry na palcach nóg i rąk a także wymodelować głowę i podkreślić fałdy na szyi. Na tym poziomie jest chyba najwięcej roboty ale później pozostanie nam tylko podkreślenie detalu który teraz dodaliśmy dlatego warto się przyłożyć.
Przechodzimy na kolejny poziom podziału. Siatka zagęści się do 1335808 poly, to już sporo i zbrush może wyraźnie zwolnić. Jak ktoś ma mało ramu to może a nawet musi posłużyć się maskowaniem żeby dało się jako tako pracować. Żeby pozostawić widoczną tylko część siatki którą będziemy w danym momencie sculptować obracamy model z wciśniętym klawiszem shift tak żeby model obrócił się dokładnie bokiem do nas. Jest to ważne ponieważ zamaskowana część siatki nie będzie edytowana czyli jak np. zaznaczymy głowę jakoś z ukosa i będziemy sculptować jedną stronę a po drugiej stronie nie będzie widoczna(zamaskowana) symetryczna część siatki którą sculptujemy to tam detal się nie doda. Pamiętajmy też żeby nie sculptować na granicy maskowania bo może tam powstać wyraźna krawędź po odsłonięciu całej siatki. Dobra model mamy ustawiony to teraz wciskamy lewy ctrl-shift kursor zmienia się na lasso z kwadratowym zaznaczeniem. Cały czas trzymając wciśnięte oba klawisze zaznaczamy część siatki która ma pozostać odsłonięta(pole zaznaczenia ma zielony kolor). Jeżeli chcemy zamaskować część siatki to robimy tak samo tylko po zaznaczeniu obszaru maskowania puszczamy shift(pole zaznaczenia zmieni kolor na czerwony). Jak chcemy odsłonić całą siatkę to trzymając wciśnięty ctrl i shift tak jak przy maskowaniu klikamy raz na canvas a jak chcemy odwrócić maskowanie to w pustym miejscu zaznaczamy prostokąt mając wciśnięty ctrl-shift oczywiście. Mając zaznaczoną część modelu możemy po niej sculptować z większą płynnością ponieważ wyświetlana jest tylko część polygonów całego obiektu i program działa szybciej.
Kontynuujemy dodawanie i podkreślanie detali cały czas standardowym pędzlem i alphą. W niektórych miejscach siatka jest na tyle gęsta że można spokojnie dodawać detal z alph które przygotowaliśmy. Żeby to zrobić klikamy na białe pole podpisane Alpha po lewej stronie(nie śmiać się) i z rozwiniętego menu wybieramy sobie jakąś ze standardowych alph albo importujemy własne - przycisk Import.
Taki detal najlepiej dodawać zmieniając stroke na DragRect - jak to działa każdy zobaczy po pierwszym użyciu. Ja jednak poczekam z dodaniem tych ostatnich detali na 6 poziom podziału gdyż wtedy będą one wyglądały wyraźniej. Ok nie ma co się już rozczulać nad tymi detalami czas ostatecznie zagęścić siatkę i nanieść szczegóły skóry przy użyciu alph przygotowanych w photoshopie.
Zanim jednak to zrobimy stwórzmy nowa warstwę żeby w razie czego można było zapanować nad tymi małymi detalami. W menu tool odnajdujemy pozycję layers i klikamy na new po kliknięciu na rename możemy zmienić jej nazwę na np. "detal". Wszystko co zrobimy na tej warstwie będzie można ukryć wyłączając warstwę albo zmienić intensywność dodanego detalu czyli np pogłębić dodane pęknięcia itp.
Siatka ma teraz ponad 5 mln poly jak komuś przy próbie podziału siatki wyskoczyło okienko z informacją że podział spowoduje powstanie siatki o większej ilości poly niż jest to ustawione w preferencjach to musi on zmienić ustawienia MaxPolyPerMesh w menu Preferences>Mem. Liczba jeden oznacza 1 milion poly czyli zmieńmy to sobie na 5,5 co odpowiada 5,5 mln poly.
Teraz to już się chyba bez maskowania nie obejdzie, no chyba że macie co najmniej 1,5Gb ramu, przy 2 Gb powinno śmigać. Tak przy okazji, jak pracujecie w zbrushu to nawet przy słabym komputerze powiększenie pamięci ram da naprawdę dobre rezultaty. Jak macie 1Gb ramu to warto dokupić drugie tyle a komfort pracy na pewno wzrośnie przy wysoko polygonowych siatkach.
Zaimportujmy przygotowane alphy do zbrusha. W tym celu klikamy na pozycję alpha po lewej stronie anvasa i tam wybieramy import. Wskazujemy nasze alphy (możemy zaznaczyć wszystkie) i imortujemy. Zmieniamy stroke na DragRec i ustawiamy intensity brusha na około 30. Ponieważ dinozaur ma dużo dosyć sporych pęknięć na skórze dodamy je najpierw a potem resztę detali. Pęknięcia dodajemy w trybie sub oczywiście. Przyda się jakaś alpha z równoległymi paskami do zrobienia fałdek biegnących wzdłóż kręgosłupa i na górze ogona. Kiedy skończymy dodawać pęknięcia przyjdzie pora na ich podkreślenie. Robimy to w taki sposób że wybieramy standardową alphę(całą białą), stroke: Freehand i podkreślamy grubość skóry zaraz przy pęknięciu tak żeby powstał tam delikatny fałd na skórze. Robimy to tylko z niektórymi pęknięciami tymi które znajdują się w miejscach zgięć i w tych gdzie skóra najbardziej się deformuje podczas ruchu. W taki sam sposób podkreślamy fałdki biegnące wzdłuż grzbietu i ogona dinozaura.
Jak załatwimy sprawę pęknięć wybieramy alphę którą nadamy ostateczną fakturę skórze. Najlepiej mieć ze dwie albo trzy takie alphy ponieważ skóra ma inną grubość i strukturę w różnych miejscach. I znowu ustawiamy stroke na DragRect i intensity na 30 i dodajemy tym razem w trybie Add detal skóry. Górę głowy i całego ciała pokryłem grubą skórą o wyraźnych owalnych wypustkach a resztę tak jak widać na obrazkach alphą popękanej skóry słonia. Brzuch to coś na podobieństwo brzucha krokodyla(nie mogę ze śmiechu:) Jak dodamy detal na całej skórze to znowu wybieramy standardową alphę, stroke: Freehand, intensity 15 i podkreślamy wybrane charakterystyczne fragmenty skóry żeby nadać jej różnorodności. Pamiętajcie żeby w danym miejscu dodawać detal tylko raz żeby nie nanosić kilka razy albhy w to samo miejsce bo powstanie tam straszny bajzer. Starajcie się dodawać detal tak żeby nie zamaskować całkowicie tych wszystkich pęknięć i fałdek które dodaliśmy wcześniej.
To by było tyle jeśli chodzi o sculpt, czas wypalić normala i displacement żeby przenieść cały ten detal do maxa. W menu Tool>Geometry shodzimy na najniższy (pierwszy) poziom subdiv i jak ktoś nie zapomniał zrobić morph targeta tak jak to mi się zdarzyło to przechodzimy do zakładki Morph Target i wciskamy switch. Model wróci nam do pierwotnego kształtu dla którego wypalimy mapkę displacement. Rozwijamy zakładkę Displacement pod DPRes ustawiamy rozdzielczość mapy czyli 4096 włączamy też Adaptive i Mode i klikamy na CreateDispMap. Po wygenerowaniu mapy znajdziemy ją w menu alpha wystarczy na nią kliknąć żeby ją wyselekcjonować i potem obrócić (FlipV), wybrać export i zapisać w formacie .psd lub .tiff
Teraz pora na normala jest nam on potrzebny ponieważ sam displacement nie wychwyci nam wszystkich tych malutkich szczegółów.
Normal mapę możemy wygenerować w zmapperze a w ten plugin wyposażony jest zbrush 3.1 jak ktoś pracuje na wersji 3.0 to musi ściągnąć darmową aktualizację ze strony pixologic. Podobnie jak z dispem schodzimy na najniższy poziom subdiv i w menu texture ustalamy rozdzielczość textury na 4096x4096 i klikamy na new. Pomiędzy przyciskami do nawigacji w oknie obszaru roboczego a panelem bocznym jest przycisk do chowania panelu bocznego. Musimy go ukryć zanim włączymy zmappera bo nie wyświetli się jego menu. Ok włączamy zmappera otwieramy zakładkę Normal & Cavity Maps i klikamy na Create Normal Map. Wcześniej otwieramy konfigurację zmappera, jak ktoś nie wie co i jak ustawić to tu http://www.zshare.net/download/520047977bead8/ możecie ściągnąć konfigurację której użyłem. Po wygenerowaniu normal mapy znajdziemy ją w menu texture na pewno jest odwrócona więc klikamy na FlipV i dopiero ją exportujemy(jak użyliście konfiguracji do której podałem link to nie trzeba obracać textury) .
Ok mapy normal i displacement mamy gotowe możemy sprawdzić jak się one prezentują w maxie. Włączamy maxa zmieniamy renderer na mental ray i otwieramy edytor materiałów. ustawiamy wszystko tak jak na obrazkach:
Po dodaniu mapy Normal bump do slotu bump wrzucamy tam naszą normal mapę i gotowe. Jak wybierzemy materiał "material to shader" do slotu surface to trzeba tam wskazać dowolny materiał np. z edytora materiałów weźmy pierwszy wolny to do niego wrzucimy później teksturę diffuse. Tak wygląda dinozaur z dispem i normalem:
W następnej części zajmiemy się mapą diffuse i specular jak będzie potrzebny. Jak ktoś ma jakieś pytania to proszę pisać w tym wątku. Pozdrawiam.