I N S T Y TU T M A T E M A T Y C Z N Y U N I W E R S Y T E T U W R O CŁ A W S K I E G O

Wojciech Sura Notatki do laboratorium Modelowanie grafiki trójwymiarowej w Blenderze 2.42

WAŁBRZYCH 2007

O SKRYPCIE
Skrypt ten powstał przed pierwszym laboratorium „Modelowanie grafiki trójwymiarowej w Blenderze 2.42”. Zawiera on zarys tematyki laboratorium – obejmuje wszystkie zagadnienia, które zostaną tam poruszone. Można go traktować jako repetytorium lub ściągę z treści zajęć; można go używać również podczas laboratorium, a także w czasie ewentualnych sprawdzianów, bowiem istotą umiejętności modelowania świata trójwymiarowego jest wyobraźnia przestrzenna, pomysłowość i zmysł artystyczny, wzbogacone tylko o umiejętne korzystanie z narzędzia, nie zaś – wykuta na pamięć instrukcja obsługi programu. Skrypt ten nie ma jednak charakteru podręcznika – część opcji Blendera zostanie opisana pobieżnie, część zostanie pominięta, zaś niektóre zagadnienia będą dotyczyły ogólnych aspektów modelowania grafiki trójwymiarowej. Zakres wiadomości niniejszego dokumentu obejmuje: Podstawy ideologii modelowania brył trójwymiarowych; Podstawy i ideę środowiska Blendera; Przegląd podstawowych obiektów Blendera (prymitywów); Podstawy poruszania się w świecie trójwymiarowym; Modelowanie z użyciem prymitywów w trybie edycyjnym; Bardziej zaawansowane techniki modelowania; Materiały – przegląd wraz z podstawowymi zagadnieniami (tekstury-maski, bumpmapy i in.); W dodatku znajduje się:
● ● ● ●

● ● ● ● ● ● ●

Spis skrótów klawiaturowych używanych w Blenderze 2.42; Przykładowe rendery wykonane w Blenderze oraz za pomocą YafRaya; Szczegółowy opis niektórych elementów Blendera; Spis linków do stron internetowych poświęconych Blenderowi: strona domowa, polska strona społeczności Blendera, galerie, tutoriale i in.

Niniejszy skrypt udostępniony jest w celach edukacyjnych. Można go kopiować i rozpowszechniać bez zmian pod warunkiem, że jedyne poniesione wydatki związane będą z kosztami kopiowania. Sprzedaż tego skryptu jest niezgodna z prawem. Prawa autorskie wszystkich wymienionych programów, książek, stron internetowych i innych materiałów należą do ich właścicieli. Wszelkie materiały, na przykład rendery, zostały zamieszczone w tym dokumencie za zgodą ich twórców.

3
Rozdział 1. Wstęp do grafiki trójwymiarowej i powtórka z matematyki. Zanim zaczniemy poznawać środowisko i możliwości Blendera, musimy przypomnieć sobie kilka pojęć i zagadnień z zakresu geometrii w przestrzeni. Przydatnym może okazać się odgrzebanie notatek z wykładów: Geometria 1 i 2 oraz Algebra liniowa 1 i 2. Rozdział 1.1. Przeznaczenie grafiki trójwymiarowej Choć może trudno w to uwierzyć, grafiką trójwymiarową jesteśmy otoczeni bez przerwy. Przeważająca większość obecnych gier komputerowych toczy się w środowisku trójwymiarowym, efekty grafiki trójwymiarowej wykorzystywane są w różnych filmach i serialach (np. Stargate, Star Wars itp.), a nawet w reklamach telewizyjnych, pojawiając się zwykle jako nowa, wydajna szczoteczka do zębów czy też bardzo skuteczny środek przeciwbólowy, penetrujący ciało człowieka w poszukiwaniu celu. Powstają

Rysunek 1: Wizualizacja przebudowy placu Grunwaldzkiego. Autor: BBKS Projekt

już filmy w całości zaprojektowane w technice grafiki trójwymiarowej (jednym z pierwszych pełnoekranowych filmów był film Toy Story, po nim np. Shrek, Over the hedge i in.) Wszelkie wizualizacje są również bardzo często realizowane w technice trójwymiarowej, wystarczy przytoczyć choćby projekt przebudowy placu Grunwaldzkiego we Wrocławiu. Z pomocą programów do modelowania grafiki trójwymiarowej niejednokrotnie projektuje się też całe obiekty architektoniczne, od elewacji aż do wykończenia wnętrz. Powstają nawet firmy, które trudnią się przygotowywaniem jest dzisiejszy takich silnie świat prezentacji. Widać zatem, że grafika trójwymiarowa

Rysunek 2: Przykład wymodelowania dekoracji wnętrza. Autor: Krzysztof Chrustalew, www.alldecor.pl

wbudowana

w

mediów, kultury i rozrywki.

4
Rozdział 1.2. Bryły Przypomnijmy sobie kilka pojęć związanych z geometrią przestrzenną.

Przez

wierzchołek

(ang.

vertex)

będziemy

rozumieli pewien

wyróżniony,

charakterystyczny punkt wielościanu, w którym stykają się przynajmniej trzy jego ściany. Przeważnie istnieje nieskończenie wiele płaszczyzn stycznych do wierzchołka, choć nie jest to regułą.

Przez krawędź (ang. edge) będziemy rozumieli odcinek łączący pewne dwa Ściana (ang. face) to domknięty podzbiór pewnej płaszczyzny, wyznaczony co

wierzchołki.

najmniej trzema krawędziami. Z reguły w aplikacjach do modelowania 3d ściany mogą być tylko trójkątami, Blender pozwala na istnienie czworokątnych ścian (dla wygody projektanta – wewnętrznie są one traktowane jak dwa trójkąty).

Normalna do ściany to pewien wektor, który jest do niej prostopadły. W Blenderze

spotyka się również normalne do wierzchołków – są to wypadkowe normalnych wszystkich ścian, do których przylega dany wierzchołek. W świecie modelowania 3d przyjmujemy, że ściana bryły może mieć tylko jedną normalną, którą jednoznacznie wskazujemy (mowa o zwrocie wektora).

Przez pojęcie siatki będziemy rozumieli zbiór krawędzi i wierzchołków zadanej bryły.

Rysunek 3: Wierzchołki

Rysunek 4: Krawędzie

Rysunek 5: Ściany

Bryłą zaś będziemy nazywali spójny zbiór wierzchołków, krawędzi i ścian.

5
Rozdział 1.3. Więcej o wierzchołkach, krawędziach i bryłach W poprzednim rozdziale dowiedzieliśmy się, że pod pojęciem bryły rozumieć będziemy pewien wielościan. Pojawia się więc pytanie: co z bryłami, które nie mają ścian - na przykład kulą, stożkiem, walcem? Odpowiedź jest prosta: takich brył wymodelować się nie da. Za każdym razem, gdy będziemy chcieli wstawić na scenę kulisty lub okrągły obiekt, będziemy musieli go interpolować pewnym wielościanem; mówiąc prościej: oszukać obserwatora tak, by mu się wydawało, że widzi krągłość. Przykłady interpolacji kuli widoczne są na rysunku 6. Łatwo zobaczyć, że obiekty znajdujące się na końcu każdej serii, wydają się być kulami, ale w rzeczywistości nimi nie są.

Rysunek 6: Interpolacje kuli z użyciem Icosfer i Geosfer
Kiedy projektujemy grafikę trójwymiarową, naszym celem jest końcowe przedstawienie wymodelowanej sceny w postaci rysunku bądź animacji (będziemy o tym mówić w rozdziale 1.3). Realistyczne sceny mogą zawierać nawet setki tysięcy wierzchołków, krawędzi i ścian. Jednak wraz ze wzrostem liczby wierzchołków, gwałtownie rośnie czas renderowania sceny. W ekstremalnych przypadkach może on osiągnąć nawet kilka dni! Ograniczeniem w tej materii jest tylko zdrowy rozsądek. Mniejsza liczba wierzchołków powoduje, że nasza bryła staje się mniej realistyczna, a wszelkie jej braki musimy nadrabiać stosowaniem różnych sztuczek (np. odpowiednie materiały, oświetlenie itp.). Większa z kolei zwykle podnosi realizm sceny kosztem wydłużenia czasu jej renderowania.

6
Jako przykład umiejętnego użycia obiektów lowpoly (z małą liczbą ścian) podajmy zaprojektowaną przez Krzysztofa Nowackiego (Guciasa) z forum blenderowni (www.blender.pl) wizualizację projektu płockiej Areny. Po zaprojektowaniu samego budynku, aby podnieść realizm sceny, Gucias użył samochodów lowpoly. Dzięki temu czas renderowania i tak już skomplikowanej sceny znacząco nie wzrósł, a modele z odległości, z jakiej wykonywany był render, były łudząco podobne do ich wersji highpoly. Zauważmy jednak, że gdyby Gucias nie nałożył na bryły odpowiednich tekstur z rysunkami samochodów, wcale nie wyglądałyby tak realistycznie (zwróć uwagę, na przykład, na szyby samochodów – nie są wcale przezroczyste). Można w skrócie powiedzieć, że poniższe rendery przedstawiają zdjęcia samochodów nałożone na bryłę z grubsza wymodelowaną w kształcie samochodu.

Rysunek 7: Lowpoly model Volvo S40 (491 ścian) Autor: Gucias

Rysunek 8: Lowpoly model Lexus GS 450h (514 ścian) Autor: Gucias

7

Rysunek 9: Lowpoly model Lexus GS450h i jego siatka Autor: Gucias
Finalna wizualizacja z użyciem zaprojektowanych wcześniej lowpoly modeli samochodów wygląda następująco:

Rysunek 10: Projekt płockiej Areny z użyciem samochodów lowpoly Autor: Gucias
Zwróćmy teraz uwagę na samochody. Są one widoczne z dużej odległości, która uniemożliwia dostrzeżenie szczegółów. Dzięki temu obserwator nie ma szans zauważyć, że są to mało realistyczne modele lowpoly. Dzięki temu scena jest realistyczna przy zachowaniu rozsądnej liczby wierzchołków. Stosowanie modeli samochodów lowpoly w wizualizacjach jest powszechne.

8
Zobaczmy, dla porównania, jak wygląda model highpoly samochodu. Autorem poniższego Lamborghini Murcielago jest Paweł Mroczkowski. Nie użył on żadnej tekstury – widoczny poniżej model został przez niego w całości zaprojektowany.

Rysunek 11: Highpoly model Lamborghini Murcielago Autor: Paweł Mroczkowski
Rozdział 1.4. Inne elementy sceny Scena nie składa się jednak tylko z brył. Są na niej obecne jeszcze inne rodzaje elementów:

światła – niewidoczne obiekty, które promienie, wskutek czego

generują

oświetlają znajdujące się na scenie bryły;

systemy cząsteczek (ang. particles) krople wody, iskry, płomienie

pozwalające na uzyskanie efektów takich, jak sztucznych ogni, ale też futro lub włosy oraz inne obiekty, które występują w bardzo dużych ilościach (rys. 14);

Rysunek 12: Bryły

9

obiekty META, które są szczególnym przypadkiem brył posiadających zdolność

„zlewania się” ze sobą (rys. 13).

Rysunek 14: Cząsteczki Rysunek 13: Strumień wody wymodelowany z użyciem cząsteczek i obiektów META
Zadaniem projektanta pozostaje takie dobranie i przygotowanie wszystkich elementów sceny, by stała się ona jak najbardziej realistyczna. Rozdział 1.5. Składanie sceny z „klocków” Bardzo rzadko (jeśli w ogóle) zdarza się, by cała scena została wymodelowana jako lita bryła. O wiele łatwiej jest bowiem wymodelować jej elementy, a następnie poskładać je tak, by tworzyły jedną całość.

Rysunek 16: Ekstremalny przykład składania sceny z "klocków". Model Lego Technic 8251. Autor: Wojciech „Spook” Sura.

Rysunek 15: Elementy z których został złożony motor. Autor: Wojciech „Spook” Sura.

10
Ma racjonalne to, naturalnie, uzasadnienie. swoje Po

pierwsze – trudno jest, modelując skomplikowaną scenę jako jedną bryłę, skupić się nad jednym drobnym szczegółem. Po drugie – większość narzędzi ułatwiających edycję brył pozwala na operowanie tylko na całych bryłach (na przykład modyfikator Subsurf), co uniemożliwiłoby (a przynajmniej: utrudniłoby) szczegółów – dopracowanie modyfikatorów

Rysunek 17: Karabin Barret M82A1, poniżej rozłożony "na części". Autor: Wojciech „Spook” Sura.

można by było używać tylko na całej, litej scenie. Dalej - bardzo często się zdarza, że niektóre elementy są na scenie w jakiś sposób powtarzane (będziemy się uczyć częścią o DupliFrames większej oraz bryły, DupliVerts). Gdyby były one tylko pewnej znacznie utrudniłoby to operacje na nich. Ponadto spore problemy pojawiłyby się podczas nakładania materiału – przeważnie elementy na scenie mają różne materiały (stal, rdza, farba, drewno itp.) Nakładanie kilku różnych materiałów na jeden wielki obiekt byłoby bardzo żmudne (dobrze, że fiaskiem.

Rysunek 18: Elektrowóz EU07 złożony z "klocków". Autor: Wojciech „Spook” Sura.

w ogóle możliwe!). Wreszcie - próba animacji takiego świata zakończyłaby się spektakularnym Czym kierować się podczas podziału modelowanej sceny (obiektu) na „klocki”, pod-elementy? Możliwości jest kilka, niemniej najczęściej robi się to na jeden z dwóch sposobów:

Dzielimy większy obiekt na mniejsze w taki sam sposób, jak jest to w rzeczywistości

(przykładem może być model motorka złożony (w dosłownym tego słowa znaczeniu) z klocków)

11

Dzielimy większy obiekt na mniejsze

tak, by wygodnie nam było wymodelować wszystkie mniejsze (przykładem może być model kilku karabinu litych brył, snajperskiego ale jego Barret jest M82A1, który w rzeczywistości składa się z model poskładany z wielu małych elementów – rys. 17). W pierwszym przypadku mamy pewność, że elementy będą do siebie „pasowały” - przecież w rzeczywistości obiekt jest właśnie w ten sposób

Rysunek 19: "Przenikanie" brył

poskładany. W drugim zaś korzystamy z faktu, że w naszym wirtualnym, trójwymiarowym świecie możemy bezkarnie „zatapiać” jedne bryły w drugich, jak to widać na rysunku 19. Rozdział 1.6. Projekcje brył Żyjemy w świecie, w którym wszelkie obiekty są trójwymiarowe – jeśli ustawimy je w układzie współrzędnych, dają się opisać jako pewien zbiór punktów (wektorów) o trzech współrzędnych: x, y oraz z. Jednak obraz wyświetlany na ekranie komputera jest tylko dwuwymiarowy. Dlatego warto zapamiętać, że obserwowane przez nas obrazy wygenerowane przez program do modelowania 3d są tylko pewnymi projekcjami trójwymiarowych obiektów przechowywanych w pamięci komputera. W programach do projektowania i modelowania 3d obecne są dwa sposoby wyświetlania brył na płaskim ekranie: metoda ortogonalna oraz perspektywiczna. Zacznijmy od tej pierwszej. Naszym celem jest uzyskanie pewnej projekcji obiektu trójwymiarowego na dwuwymiarowym ekranie. Zawieśmy więc ten ekran w przestrzeni trójwymiarowej. Przyjmijmy, że obiektem, który chcemy odwzorować, prostą jest sześcian. do Z każdego i wierzchołka tego sześcianu prowadzimy teraz prostopadłą ekranu zaznaczamy punkt przecięcia tej prostej z ekranem. Cały proces jest zobrazowany na rysunku 20. Kiedy skończymy proces, na naszym

Rysunek 20: Proces generowania widoku ortogonalnego

12
„wirtualnym”, zawieszonym w przestrzeni trójwymiarowej ekranie znajdzie się pewna liczba punktów, które będą obrazowały odpowiednie wierzchołki bryły rzutowane na płaszczyznę ekranu. Wystarczy teraz przenieść wirtualny, ale już tylko dwuwymiarowy ekran na – również dwuwymiarowy - ekran komputera, by otrzymać szukaną projekcję. O odwzorowaniu ortogonalnym można również myśleć jak o rzucie prostokątnym punktów na ekran bądź też jak o pewnego rodzaju sumie przekrojów bryły płaszczyznami równoległymi do płaszczyzny ekranu. Warto zatrzymać się teraz i dokładnie przeanalizować te dwa opisy – nie są one, wbrew pozorom, skomplikowane, a dają bardzo dobre wyobrażenie na temat tego sposobu projekcji. Drugim sposobem jest odwzorowanie perspektywiczne. zawiesimy w Zaczniemy podobnie – przestrzeni trójwymiarowej

ekran, na którym będziemy „wyświetlać” obrazy trójwymiarowych brył. Tym razem jednak posadzimy który za będzie tym ekranem punkt na od obserwatora przestrzeni), Teraz wierzchołków wierzchołki brył. poprowadźmy brył do proste obserwatora. (wyróżniony

„patrzył”

Zauważymy, że przetną one w pewnym miejscu zawieszony ekran. Odnotujmy te miejsca. Kiedy skończymy ten proces, na

Rysunek 21: Sposób generowania widoku perspektywicznego

wirtualnym ekranie znajdzie się, podobnie jak w poprzednim przykładzie, zbiór punktów obrazujących „oglądane” bryły. Rysunki 22 i 23 perspektywiczną. Różnice w uzyskanych projekcjach są oczywiste. Z pewnością obrazek wygenerowany metodą perspektywiczną wyda się bardziej „naturalny” od „sztucznego” - ortogonalnego; dzieje się tak dlatego, że sposób działania oka ludzkiego jest bardzo podobny do opisanej wyżej metody odwzorowywania perspektywicznego. Oczekujemy, że obiekty, które znajdują się dalej, będą „mniejsze” od tych, które są bliżej, szukamy zniekształceń powodowanych specyficznym położeniem obiektów („rozciągnięcie” obiektów znajdujących się na granicy pola widzenia) itp. Warto zapamiętać, że kamery w Blenderze „widzą” właśnie perspektywicznie. Po co więc używać widoku ortogonalnego? Po pierwsze dlatego, że widok ortogonalny ma „wygodną” własność – zachowuje wymiary i kąty krawędzi znajdujących się na płaszczyźnie do pokazują projekcję trzech sześcianów metodą ortogonalną oraz

13
niego równoległej. To pozwala na wygodne projektowanie nawet skomplikowanych brył. Drugim Popatrzmy argumentem na jest wspomniana już dwuwymiarowość wyświetlacza odwzorowanie komputerowego. perspektywiczne

sześcianów. Wyobraźmy sobie, że „chwycimy” jeden z sześcianów i przesuniemy go „w prawo” - ale czym tak naprawdę jest „prawo”? Przecież może oznaczać zarówno przesunięcie obiektu w prawo (bez cudzysłowów, czyli zgodnie z osią OX), jak i translację w głąb pola widzenia. Rysunek 24 ilustruje wspomnianą sytuację. Oczywiście, jeśli będziemy przesuwać bryły w widoku perspektywicznym, również będą się one przesuwały po płaszczyźnie równoległej do płaszczyzny pola widzenia. Jednak o wiele trudniej będzie ustalić, gdzie właściwie przesunęliśmy bryłę – jest to powodowane wspomnianymi perspektywicznym. Rzut ortogonalny definiuje nam jednoznacznie cztery kierunki, bowiem jest on wyznaczony przez pewien zbiór płaszczyzn prostopadłych do naszego pola widzenia. Dzięki temu możemy równie łatwo, co precyzyjnie, zniekształceniami w widoku

Rysunek 22: Trzy sześciany - widok ortogonalny

Rysunek 23: Trzy sześciany - widok perspektywiczny

decydować o położeniu obiektów na scenie. Warto zapamiętać, że Blender pozwala na bardzo szybkie przełączanie pomiędzy czterema spredefiniowanymi widokami ortogonalnymi: z góry, z dołu, z przodu, z tyłu, z lewej i z prawej strony. I jeszcze jedno. Wykonując powyższe operacje odwzorowywania sześcianów na ekranie, zupełnie niechcący wyrenderowaliśmy dwa obrazy (22 i 23). Sam proces renderowania jest oczywiście o wiele bardziej skomplikowany niż to, co robiliśmy powyżej, ale sprowadza się do tego samego celu: uzyskania dwuwymiarowej projekcji widzianej skryptu posługiwać terminem renderowania. z pewnej jakiegoś będziemy się już trójwymiarowej sceny punktu. W dalszej części

Rysunek 24: Niejednoznaczność pojęcia "prawo" w widoku perspektywicznym

14
Rozdział 2. Wprowadzenie do Blendera 2.42 Pierwotnym producentem Blendera była firma NaN Holding. Pierwsza wersja Blendera (oznaczona numerem 1.0) ujrzała światło dzienne w styczniu 1995 jako komercyjny program do modelowania grafiki trójwymiarowej. Jego licencja przewidywała brak opłat zarówno za używanie do celów prywatnych, jak też do celów komercyjnych (na przykład projektowanie grafiki do reklam lub do gier komputerowych), natomiast opłaty były pobierane za pomoc techniczną. 13 listopada 2002 roku firma NaN Holding ogłosiła upadłość. Wtedy też na rynku oprogramowania komputerowego zaistniała nowa firma Blender Foundation, która ogłosiła publiczną zbiórkę pieniędzy na odkupienie od NaN Holding praw do Blendera. Wystarczył tydzień, by zebrać potrzebne 100 000 € i zaraz po zakupie nowy właściciel opublikował kod źródłowy Blendera na licencji Gnu GPL – Blender stał się programem otwartym. Blender jest pełnowartościowym programem do modelowania grafiki trójwymiarowej. Dzięki otwartości kodu jest rozwijany przez programistów na całym świecie – jest on teraz dostępny na wiele platform: Windows, Linux, MacOs, Solaris, Irix, a nawet Windows Mobile (system instalowany na palmtopach). Blender pozwala na wykonywanie szeregu operacji związanych z projektowaniem scen 3d: modelowanie brył, przygotowywanie i nakładanie materiałów, obsługę cząsteczek i meta-obiektów, rendering z użyciem wewnętrznego raytracera (alternatywnie można też użyć YafRaya), ma wreszcie wbudowany silnik, dzięki któremu można projektować własne gry z użyciem wymodelowanych obiektów. Jednym ze „znaków rozpoznawczych” Blendera jest jego innowacyjny interface. Program jest często odrzucany przez początkujących użytkowników, którzy mają problemy z poruszaniem się w jego środowisku. Dzieje się tak dlatego, że interface został przygotowany głównie z myślą o wydajności użytkowania; wystarczy jednak poznać ideę środowiska oraz nauczyć się kilku skrótów klawiaturowych, by praca w Blenderze stała się łatwa i szybka. Program wyróżnia się również stosunkowo niewielkim rozmiarem – jego pełna wersja zajmuje około 15 MB, w których mieści się w pełni funkcjonalne graficzne środowisko pracy, lokalizacje (w tym również polska) i podstawowe biblioteki niezbędne do działania programu. Zachęcam do samodzielnego pobrania i zainstalowania Blendera – ma on bardzo niskie wymagania sprzętowe – wystarczy mu 300 Mhz procesor przy 128 MB ramu i 20 MB wolnego miejsca na dysku.

15
Rozdział 3. Instalacja Blendera w systemach Windows i Linux. Uwaga: w momencie, gdy skrypt ten był pisany, stabilną wersją Blendera była 2.42. Blender jest rozpowszechniany w dwóch postaciach. Jest programem Opensource'owym – można zatem pobrać jego kod źródłowy i samodzielnie przekompilować go – jednak czynność ta jest czasochłonna i wymaga odpowiednich narzędzi oraz wiedzy. Autorzy zadbali jednak o dostarczenie pakietów z wersją już skompilowaną i gotową do użycia pod różnymi systemami operacyjnymi. Pierwszą czynnością będzie zatem pobranie Blendera z jego oficjalnej strony internetowej. Należy zatem wejść na stronę: www.blender.org Po załadowaniu się strony, odnajdujemy na górnej belce strony pozycję: Download Po najechaniu na nią myszką, rozwinie się menu, z którego należy wybrać pozycję: Blender Otworzy się kolejna strona (Rys. 25). Po przewinięciu w dół ukaże się lista dostępnych pakietów (Rys. 26), z której możemy wybrać pakiet zawierający interesujące nas opcje (np. zgodność z językiem należy skryptowym wybrać jeden Python) oraz pod konkretną z serwerów lustrzanych, platformę (np. MS Windows). Aby rozpocząć ściąganie, zawierających pakiet. Robimy to, klikając na tekst oznaczający kraj, w którym taki serwer się znajduje – np. USA. Użytkownikom Microsoft Windows proponuję ściągnąć pakiet oznaczony nazwą: MS Windows Zip, Python 2.4, 98/ME/2000/XP (6.8 MB) Użytkownikom Linuksa, zaś: Linux i386 2.3.2, static, FFMPEG, Python 2.4 (10.9 MB) Oba pakiety zawierają Blendera z włączoną obsługą skryptów Pythona. Aby z niej skorzystać, należy mieć również zainstalowany interpreter skryptów Pythona, który można ściągnąć ze strony www.python.org. Pliki zajmują około 10 MB, więc ściąganie może

Rysunek 25: Dział download stron Blendera

Rysunek 26: Dostępne do ściągnięcia pakiety.

zająć kilka minut.

16
Rozdział 3.1. Instalacja Blendera 2.42 pod Microsoft Windows. Aby zainstalować Blendera pod Microsoft Windows, należy: 1. Utworzyć katalog, w którym będzie znajdował się Blender. Może to być na przykład: C:\Program Files\Blender Foundation\Blender 2. Otworzyć ściągnięte z internetu archiwum. Sugerowany pakiet będzie miał nazwę: blender-2.42a-windows.zip Microsoft Windows od wersji Millenium Edition ma wbudowane w Eksplorator narzędzie do otwierania archiwów .zip . Jeśli korzystamy z Windows 98, należy użyć odpowiedniego programu – np. WinRar, WinZip, Total Commander lub podobnego. 3. Rozpakować wszystkie pliki znajdujące się wewnątrz archiwum do wcześniej utworzonego katalogu. 4. Utworzyć skrót do Blendera na pulpicie lub w Menu Start.

Rozdział 3.2. Instalacja Blendera 2.42 pod Linuksem Instalacja Blendera pod Linuksem jest analogiczna. 1. Tworzymy katalog, w którym będzie znajdował się Blender. Każdy użytkownik ma dostęp do swojego katalogu domowego, więc tam też można zainstalować Blendera. W katalogu domowym tworzymy podkatalog o nazwie, na przykład: blender 2. Otwieramy ściągnięte archiwum z Blenderem. Sugerowane archiwum ma nazwę: blender-2.42a-linux-glibc232-py24-i386-static.tar.bz2 3. Rozpakowujemy zawartość archiwum do utworzonego wcześniej podkatalogu. Możemy również utworzyć skrót na pulpicie lub w menu KDE/Gnome czy innego środowiska graficznego.

17
Rozdział 4. Idea interface'u Blendera 2.42 Interface Blendera od samego początku był projektowany pod kątem wydajności, szybkości użytkowania i czytelności. Niestety – stało się to kosztem jego intuicyjności, zatem części funkcji można próżno doszukiwać się w miejscu, gdzie – według wszelkich zasad – powinny być. Dużą rolę w Blenderze odgrywają skróty klawiaturowe. Są one ważne, ponieważ do części opcji można dostać się tylko z ich pomocą – w interface programu nie ma nigdzie opcji, która pozwalałaby na dostanie się do nich z pomocą myszki czy poprzez menu. Pierwszą koncepcją, którą wprowadzili w życie projektanci Blendera, był system niezasłaniających się okienek. Rzeczywiście – bardzo niewiele okienek można zmusić, by zasłoniły inne, większość ustawia się obok siebie lub jest dzielona na mniejsze. Po pierwszym uruchomieniu zastajemy ekran podzielony na trzy części – trzy okienka (Rys. 27)

Rysunek 27: Wygląd Blendera 2.42 po pierwszym uruchomieniu
Część pierwsza to okno konfiguracji. Zawiera ono obecnie menu, którego można spodziewać się w każdym programie – na przykład menu File pozwalające na otwieranie czy zapisywanie projektów. Część druga to podgląd sceny – obecnie w trybie widoku ortogonalnego, z góry. Część trzecia zawiera panel okienek narzędziowych pozwalających na manipulację obiektami znajdującymi się na scenie oraz na szereg innych czynności. Blender stosuje politykę wskaż, by uaktywnić. Oznacza to, że aktywne jest zawsze to okienko, nad którym znajduje się wskaźnik myszki. Okienko będzie więc, na przykład, reagowało na

18
wszelkie skróty klawiaturowe. Blender podpowiada, które okno jest aktywne, rozjaśniając jego belkę tytułową – można się o tym łatwo przekonać, przesuwając myszką ponad wskazanymi na rysunku 3 okienkami. Przyjrzyjmy się pojedynczemu okienku (Rys. 28). Każde z nich zawiera dwa elementy, które są wspólne dla wszystkich okienek. Jest to pasek tytułowy (zamalowany szarym kolorem) oraz, znajdujący się na nim, przycisk wyboru typu okienka (zaznaczony ciemnoszarym kolorem). Interface Blendera pozwala na wybór pozycji paska tytułowego. Po kliknięciu na nim prawym przyciskiem myszy, pojawia się menu (Rys. 29), z którego można wybrać pozycję paska: na górze, na dole lub brak.

Rysunek 28: Schemat okienka Blendera

Rysunek 29: Menu paska tytułowego

Rodzaj okienka jest determinowany poprzez przycisk umieszczony po lewej stronie paska tytułowego. Kliknięcie go pozwala na zmianę danych wyświetlanych w okienku poprzez wybór jednej z następujących opcji:

Podgląd sceny – ortogonalny lub perspektywiczny Edytor krzywych związanych z animacją Edytor pomagający w animowaniu

Edytor sekwencji video Linia czasu – kontroler animacji Okienko miksowania dźwięków dla animacji Okno z ustawieniami użytkownika i podstawowym menu Edytor tekstu (można w nim również pisać skrypty w Pythonie) Okienko pokazujące graf zależności obiektów sceny Okno z narzędziami Modyfikacja sposobu renderingu Otwieranie obrazków Otwieranie pliku Okno pozwalające na edycję skryptów
Dużej części opcji, które wyświetlone są w tym menu, nie będziemy używać – są odpowiedzialne za przygotowywanie animacji, szkieletu czasowego filmu, podkładanie dźwięku itp.

19
Warto zauważyć, że w rzeczywistości każde z okien Blendera jest „takie samo” – przeciwstawia się to zwykłym ramom programu, w którym standardowym układem jest pasek tytułowy, dokumentu. każde okno menu, Z np. paski pomocą w okno temu narzędzi i pole edytowania przycisku możemy zmienić podglądu 3d lub też ustawień użytkownika. Dzięki interface Blendera pozwala na silne spersonalizowanie. Użytkownicy przyzwyczajeni do programu 3dstudio max mogą, na przykład, ustawić okienka tak, jak jest to

Rysunek 30: Układ podobny do 3dstudio max

pokazane na rysunku 30. Aby uzyskać podobny układ, trzeba podzielić okna – w tym celu należy najechać na krawędź oddzielającą dwa okna, kliknąć prawym przyciskiem myszy, aby pokazało się menu kontekstowe dotyczące dzielenia i łączenia okien (Rys. 31) Po wybraniu pozycji Split Area za myszką zacznie podążać kreska pokazująca miejsce podziału okien. Kliknięcie lewym przyciskiem myszy spowoduje wykonanie podziału. Warto zauważyć, że podział jest zawsze prostopadły do krawędzi, która została wybrana. Jeśli klikniemy na pionową krawędź, będziemy dzielić okna poziomą linią, jeśli zaś na poziomą krawędź – będziemy dzielić okna linią pionową. Zmiana rozmiaru okien odbywa się poprzez najechanie myszką na stronę. Okno można zwinąć pionowo do wysokości nagłówka. Aby połączyć dwa okna, należy z menu kontekstowego wybrać pozycję Join Areas – wtedy Blender pokaże propozycję połączenia (Rys. 32). okien Przy za pomocą strzałki na sytuacji pokazanej

Rysunek 31: Menu dzielenia i łączenia okien

krawędź pomiędzy oknami – pokaże się wtedy odpowiedni kursor – i przeciągnięcie w którąś

Rysunek 32: Łączenie okien

rysunku, lewe okno zostanie usunięte, a jego miejsce zajmie zawartość prawego. Z zaprezentowanego schematu wynika, że zawsze co najmniej jedno okno jest widoczne. Przyjrzyjmy się jeszcze raz standardowemu układowi okien. Widzimy tam trzy okna – okno

20
ustawień użytkownika (zwinięte do góry), okno podglądu 3d oraz okno przycisków. Jeśli uchwycimy krawędź pomiędzy oknem użytkownika i oknem podglądu 3d i przeciągniemy ją w dół, ujawnimy „schowane” u góry dodatkowe opcje, którym będzie poświęcony następny rozdział.

Rysunek 33: Konfiguracja programu

21
Rozdział 5. Konfiguracja Blendera 2.42. Rozdział ten poświęcony jest wszystkim opcjom Blendera, które można znaleźć w okienku konfiguracji. Konfiguracja Blendera podzielona jest na zakładki dotyczące różnych aspektów interface'u i funkcjonowania programu. Rozdział ten najlepiej jest czytać przy włączonym programie, by samodzielnie obserwować zmiany zachodzące po włączeniu lub wyłączeniu którejś z opcji. Rozdział 5.1. View and Controls Pierwszą zakładką jest zakładka View and Controls (Rys. 34)

Rysunek 34: Zakładka View and Controls
Można w niej ustawić następujące opcje:

Display – pozwala na przełączenie wyświetlania różnych elementów:

Tool Tips – okienka podpowiedzi, pokazujące się po najechaniu na elementy Object Info – wyświetlanie podpowiedzi dotyczącej nazwy zaznaczonego obiektu i Global scene – aktualna scena będzie wyświetlana we wszystkich okienkach Large Cursors – zostaną użyte duże kursory myszy, gdy będzie to możliwe View name – w lewym górnym rogu każdego podglądu 3d znajdzie się informacja

interface'u

aktualnej klatki animacji

podglądu 3d
 

na temat aktualnego widoku (Top, Bottom, Front, Back, Left, Right lub User)

Menus – konfiguruje zachowywanie się menu

Open on Mouse Over – menu będzie otwierało się już po najechaniu kursora

myszy (nie będzie trzeba kliknąć). Poniższe dwie opcje, Top Level i Sublevels determinują szybkość reakcji na kursor myszy odpowiednio dla menu głównych i podmenu. Jednostką jest 1/10 sekundy.

Toolbox click-hold delay – ustala czas, po jakim pojawi się okienko menu

podręcznego po przyciśnięciu i przytrzymaniu lewego lub prawego przycisku myszy (jednostką jest 1/10 sekundy).

Pin floating panels – powoduje, że zapamiętywana jest pozycja „pływających” okienek

narzędziowych po ich zamknięciu i są one później otwierane w tym samym miejscu.

22

Plain menus – menu narzędziowe będzie wyświetlane w tradycyjny sposób, w jednej

kolumnie. Wyłączenie tej opcji spowoduje, że menu będzie wyświetlone w postaci siatki (w ten sposób można szybciej dostać się do pozycji menu)

Snap to grid – reguluje przyciąganie do siatki podczas:
  

Grab – przenoszenia (Grab (ang.) - uchwyć, złap) Rotate – obracania (obrót będzie wykonywany co Scale – skalowania

5O )

Global pivot – Punkt zaczepienia obrotu / skalowania będzie taki sam we wszystkich View zoom – określa, w jaki sposób ma działać zoom w okienkach 3d:

oknach podglądu 3d

Continue – po włączeniu trybu zoomowania ruch myszką determinuje szybkość, z Dolly – standardowy sposób w którym ruch myszką w dół przybliża podgląd do Scale – sposób podobny do Dolly, ale po osiągnięciu pewnego punktu zbliżenia,

jaką przybliżany lub oddalany jest podgląd;

sceny, w górę zaś – oddala;

„przechodzi na drugą stronę” obiektu, czyli np. z widoku Bottom na Top.

View rotation – ustala sposób, w jaki obracane jest okno podglądu:

Trackball – pozwala na obrót we wszystkich trzech osiach w taki sposób, jaki

można byłoby uzyskać za pomocą trackballa. Ruch myszką w górę, w dół, w lewo i w prawo podczas obracania powoduje obrót osi X i Y widoku, natomiast ruch dookoła okienka podglądu powoduje obrót wokół osi Z (ang. bank).

Turntable – standardowy sposób obracania układu współrzędnych tylko wokół osi

X i Y widoku znany np. z 3dstudio max.

Select with – pozwala na zadecydowanie, czy zaznaczanie będzie dokonywane przez

lewy, czy prawy przycisk myszy. Wszystkie opisywane w tym skrypcie akcje zakładają, że zaznaczanie jest dokonywane przez lewy przycisk myszki.

Auto perspective – automatycznie przełącza widok na perspektywiczny, gdy Around active – widok 3d obracany jest wokół punktu zaczepienia aktywnego obiektu. Mini Axis – reguluje wyświetlanie małej reprezentacji układu współrzędnych w

rozpoczynane jest obracanie widoku 3d będącego w trybie ortogonalnym.

Gdy ta opcja jest wyłączona, obrót dokonywany jest wokół środka układu współrzędnych.

lewym, dolnym rogu okienka podglądu. Dalsze dwie opcje, Size i Bright regulują jej rozmiar i jasność.

Select with – pozwala na zdecydowanie na interface lewo- lub praworęczny.

Domyślnie, zaznaczanie obiektów odbywa się za pomocą prawego przycisku myszy; gdy jesteśmy przyzwyczajeni do zaznaczania lewym przyciskiem, można tą opcję zmienić. Wszystkie operacje w niniejszym skrypcie będą zakładały wybranie interface z

23
zaznaczaniem lewym przyciskiem myszy.

Emulate 3-button mouse – opcja działająca tylko w trybie zaznaczania prawym

przyciskiem myszy, pozwala na zaemulowanie środkowego przycisku myszy poprzez Alt+Lewy przycisk myszy.

Middle Mouse Button – pozwala zdecydować, w jaki sposób działa środkowy przycisk Mouse wheel – pozwala na wyregulowanie działania rolki myszy – o ile taka jest

myszy: czy obraca widok (Rotate View), czy pozwala na przesuwanie go (Pan View)

obecna. Wybranie Invert Zoom spowoduje odwrócenie sposobu przybliżania widoku – domyślnie obrócenie rolką do przodu powoduje przybliżenie sceny, do tyłu zaś – oddalenie. Scroll lines pozwala zdecydować, o ile linii zostanie przewinięty tekst w edytorze tekstu, po obróceniu rolki myszy.

3d Transform Widget – pozwala dopasować obiekt transformacji 3d (o którym

będziemy mówić później). Size reguluje jego rozmiary, Handle – wielkość uchwytów (np. strzałek), Hotspot – odległość, w jakiej obiekt zaczyna reagować na kliknięcie, Object center size – rozmiar okręgu oznaczającego środek zaczepienia obiektu. Rozdział 5.2. Edit Methods Kolejna zakładka, pozwala na dopasowanie różnych ustawień związanych z edycją.

Rysunek 35: Zakładka Edit Methods

Material Linked to: - pozwala na wybranie, do czego ma zostać „podpięty” materiał

nowego obiektu, do bloku obData, czy do bloku Object. O materiałach będziemy mówili w następnych rozdziałach.

Undo – opcje dotyczące cofania wprowadzonych zmian.

Steps - pozwala ustalić, ile operacji będzie można cofnąć. Warto pamiętać, że przy

skomplikowanych scenach dane potrzebne do wykonania cofnięcia mogą zajmować dużo pamięci operacyjnej, przez co spowolnią działanie programu.

Global undo – powoduje, że w pamięci operacyjnej przechowywany jest cały plik

projektu, co przyspiesza proces cofania, ale zajmuje dodatkową pamięć operacyjną.

Auto keyframe – pozwala na automatyczne wstawianie tzw. kluczowych klatek w Duplicate with object – pozwala na zdecydowanie, które elementy obiektu mają być

różnych miejscach w programie. O animacji będziemy mówili w późniejszych rozdziałach.

24
zduplikowane wraz z nim – na przykład można wymusić, by wraz z obiektem był duplikowany jego materiał lub krzywe IPO. Rozdział 5.3. International and Fonts Następna zakładka, International and Fonts, pozwala na włączenie lokalizacji Blendera oraz na wybór czcionki interface'u użytkownika.

Rysunek 36: Zakładka International and Fonts
Po włączeniu lokalizacji (przycisk International Fonts) może zdarzyć się, że znikną etykietki przycisków, jak to widać na rysunku 37.

Rysunek 37: Przycisk wyłączający czcionki teksturowane
Należy wtedy wcisnąć przycisk wyłączający czcionki teksturowane (jest on zaznaczony na Rysunku 13 czerwoną ramką). Pokażą się wtedy wszystkie opcje lokalizacji i czcionek:

W kolejności, opcje pozwalają na:
● ●

International Fonts – przełącza lokalizację Blendera. Select font – pozwala na wybór czcionki interface'u użytkownika. Jedną z Restore to default – powoduje przełączenie na wewnętrzną, wbudowaną w Blendera Font Size – pozwala na zadecydowanie, jaki ma być rozmiar czcionki. Należy przy tym

wygodniejszych czcionek interface'u jest Arial.

czcionkę.

pamiętać, że im większa czcionka zostanie wybrana, tym więcej miejsca będą zajmować elementy interface'u. Jest to bardzo istotne, gdy posiadamy monitor z małą (jak na potrzeby grafiki komputerowej) przekątną – np. 15' i przy małej rozdzielczości (1024x768)

Language – pozwala na wybór jednego z dostarczonych z Blenderem języków – w tym

również języka polskiego. Należy pamiętać jednak, że nie cały interface Blendera został spolszczony i niektóre elementy w dalszym ciągu będą wyświetlane po angielsku. Po wyborze języka możemy zdecydować, które elementy interface'u mają zostać zlokalizowane:

Tooltips – okienka z podpowiedziami;

25
 

Buttons – przyciski; Toolbox – okienka i menu narzędziowe.

Rozdział 5.4. Themes Następna zakładka, Themes, pozwala na spersonalizowanie całego wyglądu Blendera. Świeżo po instalacji dostępne są dwa tematy, jasny Default i ciemniejszy Rounded. Poza zmianą wyglądu nie wpływają w żaden sposób na funkcjonowanie programu.

Rysunek 38: Zestaw Default
Rozdział 5.5. Auto Save

Rysunek 39: Zestaw Rounded

Kolejną zakładką jest Auto Save, w której możemy ustalić, w jaki sposób program ma wykonywać automatyczne zachowywanie naszych projektów.

Rysunek 40: Zakładka Autosave

Save

versions

decydujemy,

ile

poprzednich

wersji

projektu

ma

być

przechowywanych w katalogu.

Auto save Temp Files – ustala, czy Blender ma co pewien czas automatycznie

zapisywać nasz projekt. W tym celu należy jeszcze w ostatniej zakładce ustalić katalog, w którym mają być przechowywane takie kopie.

Minutes – co jaki okres czasu Blender będzie wykonywał autozapis. Warto pamiętać,

że przy dużych projektach czas zapisu może się wydłużyć, co będzie powodowało przerwy w pracy.

Open Recent – pozwala na otwarcie ostatnio zapisanej kopii bezpieczeństwa – pozycja

ta jest przydatna na przykład, gdy Blender zawiesi się – po jego ponownym otworzeniu,

26
będzie można odzyskać wyniki pracy. Rozdział 5.6. System and OpenGL Przedostatnią zakładką jest System and OpenGL.

Rysunek 41: Zakładka System and OpenGL
Zakładka ta zawiera dużo opcji, które pozwalają na wewnętrzną konfigurację Blendera. Opis wszystkich opcji tej zakładki znaleźć możemy w internecie, nas zainteresują tylko opcje znajdujące się pod sekcją Keyboard:

Emulate numpad – opcja powoduje, że przyciski cyfr zachowują się, jakby były w

numpadzie. Opcja ta jest przydatna np. w notebookach, gdzie rzadko kiedy dostępny jest wbudowany numpad, a przełączanie klawiatury w ten tryb jest czasochłonne i niewygodne. Cyfry znajdujące się w numpadzie odpowiedzialne są za przełączanie podglądu 3d w domyślne widoki (Top, Bottom itp.). Przyciski cyfr zwykłej klawiatury alfanumerycznej odpowiedzialne są za przełączanie tzw. warstw, jednak do tej opcji można łatwo dostać się z użyciem myszki.

Disable Caps Lock – opcja powoduje wyłączenie CapsLocka podczas pisania w

okienku tekstowym. Rozdział 5.7. File Paths Ostatnia zakładka, File Paths, zawiera opcje dotyczące położenia różnych plików związanych z Blenderem.

Rysunek 42: Zakładka File Paths

YfExport – katalog do którego będą eksportowane pliki XML potrzebne do Fonts – katalog z czcionkami; Render – domyślny katalog na wyrenderowane prace; Textures – katalog z teksturami;

poprawnego funkcjonowania zewnętrznego renderera, YafRaya.
● ● ●

27
● ● ● ● ●

Python – katalog ze skryptami Pythona dla Blendera; Tex Plugins – katalog z pluginami tekstur; Sounds – katalog z dźwiękami; Seq Plugins – katalog z pluginami sekwencji; Temp – katalog pomocniczy (temporary).

Blender pozwala również na zapisanie tzw. domyślnej sceny. Oznacza to, że możemy przygotować sobie pewną scenę, jej ustawienia (np. ułożenie dodatkowych okienek narzędziowych), a następnie zapisać – wtedy po każdym uruchomieniu Blendera zapisana scena będzie się pokazywała. Aby to zrobić, wybieramy z menu File pozycję Save Default Settings.

28
Rozdział 6. Podstawy modelowania w Blenderze W rozdziale tym poznamy kilka różnych elementów, które będą stanowiły podstawę późniejszej pracy w edytorze: kursor 3D i warstwy oraz szereg własności obiektów umieszczanych w świecie 3D. Rozdział 6.1. Kursor 3D Zaczniemy od elementu niezwiązanego ściśle z obiektami, ale bardzo pomocnego przy różnych operacjach – od kursora 3D (rysunek 43). Zanim dowiemy się, do czego można go wykorzystać, poznamy sposoby na ustawienie go w odpowiedniej pozycji. Najprostszą, choć najmniej dokładną metodą, jest wskazanie konkretnego miejsca na scenie kursorem myszy i kliknięcie prawym

Rysunek 43: Kursor 3D

przyciskiem: kursor 3D przeniesie się w nowe położenie. Zachowana zostanie jego odległość od obserwatora; innymi słowy, możemy przesuwać kursor 3D tylko po płaszczyźnie prostopadłej do osi widoku podglądu 3D (czyli równoległej do płaszczyzny widoku 3D). Użycie prawego przycisku myszy ma jednak tę wadę, że jest stosunkowo niedokładne. Dla przykładu, po kliknięciu na środek układu współrzędnych (0;0), Blender przesunął kursor 3D do punktu (0,006; 0,004). Nie jest to błąd programu – po prostu punkt wskazany przez kursor myszy przy takim powiększeniu (ang. zoom) i przesunięciu widoku (ang. pan) faktycznie miał takie współrzędne. Jeśli jednak chcemy przesunąć kursor dokładnie do środka układu współrzędnych, usatysfakcjonuje. Na szczęście istnieją dwie metody na precyzyjne ustawienie kursora. Pierwszą z nich jest użycie menu wyrównania. Wystarczy wcisnąć kombinację Shift + S, a następnie wybrać pozycję Cursor -> Grid – kursor zostanie przyciągnięty do najbliższego widocznego węzła siatki. Drugą dokładną metodą jest numeryczne wskazanie powyższe przybliżenie nas nie

Skróty klawiaturowe
Shift + S Menu wyrównania

Rysunek 44: Okno View properties

explicite, w którym miejscu powinien znaleźć się kursor 3D. W okienku View properties (rysunek 44), które możemy otworzyć, używając menu View, znajdują się trzy pola oznaczone 3D Cursor możemy w nich podać dokładną pozycję kursora 3D.

29
Rozdział 6.2. Punkt zaczepienia Każdy z obiektów znajdujących się na scenie – zarówno wizualnych, jak i niewizualnych – ma swój punkt zaczepienia. Ma on kilka ciekawych własności. Po pierwsze, punkt zaczepienia wyznacza pozycję bryły na scenie. Innymi słowy - współrzędne, które widzimy w okienku transformacji (klawisz N, pola LocX, LocY, LocZ) podają nam w rzeczywistości położenie punktu zaczepienia. Ponadto każdy nowo dodawany na scenę obiekt jest ustawiany tak, by jego punkt zaczepienia pokrył się z obecną pozycją kursora 3D. Punkt zaczepienia wyznacza również miejsce, przez które przechodzi każda oś obrotu bryły. Co więcej, jest on też punktem neutralnym skalowania i obrotu – transformacje te są wykonywane

Rysunek 45: Punkt zaczepienia bryły

zawsze dookoła punktu zaczepienia, a sam punkt jest jedynym w obrębie transformowanej bryły, który nie ulega przekształceniu (pozostaje w miejscu). Widać zatem, że odpowiednie ustawienie punktu zaczepienia bryły jest bardzo istotne. Punkt zaczepienia możemy przenieść na jeden z dwóch sposobów. Pierwszy z nich to automatyczne ustawienie go w geometrycznym środku bryły. W tym celu odszukujemy na pasku przycisków okienko Mesh (rysunek 46) i wybieramy tam Centre New. Drugim zaś sposobem jest wskazanie miejsca, do którego chcemy przesunąć punkt zaczepienia bryły za pomocą kursora 3D. Jeśli ustawimy kursor w żądanym miejscu, wystarczy kliknąć Centre Cursor w okienku Mesh – punkt zaczepienia bryły zostanie przeniesiony. Warto zapamiętać, że do precyzyjnego ustawienia kursora można użyć menu wyrównania, np. przyciągając kursor do jednego z wierzchołków bryły. Dla ciekawych, polecenie Centre jest pewnego rodzaju odwrotnością polecenia Centre New i powoduje przeniesienie obiektu, tak by jego punkt zaczepienia znalazł się w jego geometrycznym środku. Punkt zaczepienia pozostaje w miejscu. Rozdział 6.3. Nazwa obiektu Każdy obiekt który wstawimy na scenę, posiada własną unikalną nazwę. Blender będzie automatycznie nadawał nazwy obiektom według ich pierwotnego typu, jeśli więc wstawimy na scenę sześcian (Cube), element otrzyma nazwę: Cube Następny sześcian zostanie nazwany,

Rysunek 46: Okienko Mesh

Rysunek 47: Okno narzędziowe Link and Materials

30
Cube.001, kolejny – Cube.002 i tak dalej. Możemy jednak sami nadawać nazwy obiektom. Odpowiednie pole znajduje się w oknie narzędziowym o nazwie Link and Materials (rysunek 47). Aby zmienić nazwę obiektu, wystarczy ją wpisać w pole OB: . Jeśli podamy nazwę, która nie jest unikalna, Blender przywróci poprzednią. Rozdział 6.4. Logiczne łączenie obiektów Obiekty w Blenderze mogą być łączone logicznie. Oznacza to, że zbudowana zostaje hierarchia, w której pewien obiekt, zwany od tej pory rodzicem (ang. parent), staje się elementem nadrzędnym dla innego, zwanego dzieckiem (ang. child). Ustalenie takiej hierarchii może pociągnąć za sobą różne konsekwencje, w zależności od tego, jaki rodzaj hierarchii został wybrany. Najprostszy rodzaj powiązania obiektów powoduje, że obiekt-dziecko reaguje na transformacje obiektu-rodzica. Innymi słowy, jeśli przemieścimy obiekt-rodzica, analogicznemu przekształceniu ulegnie obiekt-dziecko. Jeśli obiekt-rodzic zostanie obrócony, obiekt-dziecko również zostanie obrócony, ale wokół punktu zaczepienia rodzica. Analogicznie sprawa ma się ze skalą. Jeśli natomiast będziemy wykonywać transformacje na obiekcie-dziecku, nie wpłynie to w żaden sposób na obiekt-rodzica. Aby ustalić hierarchię obiektów, będziemy musieli wskazać obiekt-rodzica oraz wszystkie obiekty, które mają stać się obiektami-dziećmi. Zwróćmy uwagę, że jeśli zaznaczymy kilka obiektów (na przykład z wciśniętym klawiszem Shift), jeden z nich będzie zaznaczony kolorem jaśniejszym od innych. Obiekt ten nazywany jest obiektem obiektami aktywnym – w przeciwieństwie do pozostałych, które są zaznaczonymi Jak (w szczególności – oczywiście – obiekt aktywny również jest zaznaczony). można się łatwo domyśleć, zaznaczamy wszystkie obiekty tak, by przyszły obiektrodzic był obiektem korzystamy Blender aktywnym. ze skrótu Następnie hierarchię.

klawiaturowego Ctrl + P, aby utworzyć poprosi nas o potwierdzenie operacji (Make parent), po czym nastąpi powiązanie obiektów. Dla przykładu, na rysunku 48 jaśniej

Rysunek 48: Tworzenie hierarchii obiektów Skróty klawiaturowe
Ctrl + P Alt + P Tworzenie hierarchii obiektów Usuwanie hierarchii obiektów

zaznaczony, aktywny obiekt - sześcian stanie się obiektem-rodzicem dla kuli. Utworzoną hierarchię możemy oczywiście usunąć – do tego służy kombinacja Alt + P. W takim wypadku należy zaznaczyć obiekt-dziecko, któremu chcemy anulować powiązanie z

31
obiektem-rodzicem. Pojawia się tu jednak problem. Otóż należy pamiętać, że po wykonaniu jakichś transformacji na obiekcie-rodzicu, przekształcony zostaje również obiekt-dziecko. Jednak nie są to jego własne transformacje – we „własnym” układzie współrzędnych, może on być transformowany niezależnie. Dlatego przed usunięciem powiązania Blender pyta, w jaki sposób to zrobić:

Clear parent – powoduje usunięcie hierarchii oraz cofnięcie wszystkich transformacji, Clear parent (keep track) – hierarchia zostanie usunięta, ale wszystkie transformacje

którym uległ obiekt-dziecko z powodu obiektu-rodzica.

spowodowane przez wcześniejszy obiekt-rodzica zostaną aplikowane do obiektu-dziecka. Oznacza to z grubsza tyle, że obiekt-dziecko zachowa pozycję, skalę i rotację, którą „odziedziczył” po obiekcie-rodzicu.

Clear parent inverse – powoduje zachowanie hierarchii, ale cofa ostatnią

transformację obiektu-dziecka, którą „odziedziczyło” po obiekcie-rodzicu. Jeśli, dla przykładu, obiekt-rodzic został przesunięty wzdłuż którejś z osi o 10 jednostek, obiektdziecko – po wykonaniu tej operacji – zostanie przesunięty o -10 jednostek, a powiązanie zostanie zachowane. Jeśli jednak obiekt-rodzic był dwukrotnie przesuwany o 10 jednostek, obiekt-dziecko zostanie cofnięty tylko o 10 jednostek, nie zaś o 20. Wiązanie obiektów w hierarchiach ma duże znaczenie na przykład w przypadku podążania po ścieżce (jeśli obiektem-rodzicem jest ścieżka, możemy ustalić tryb tworzenia hierarchii Follow path, co spowoduje, że obiekt-dziecko będzie przesuwał się w czasie wzdłuż ścieżki-rodzica) lub w przypadku powielania obiektów (DupliVerts, DupliFrames). O wspomnianych metodach będziemy mówili w kolejnych rozdziałach skryptu. Rozdział 6.5. Grupowanie obiektów Obiekty możemy również grupować bez tworzenia hierarchii. Oznacza to, że zostaje utworzona pewna grupa (możemy nadać jej unikalną nazwę), a następnie przypisane zostają do niej obiekty, przy czym każdy obiekt może być przypisany do dowolnej liczby grup. Dzięki temu możemy na przykład pogrupować konkretne obiekty na scenie (na przykład budynki, rośliny, postacie itp.), co pozwoli na łatwiejsze nimi manipulowanie. Aby dodać obiekty do grupy, zaznaczamy je, a następnie wciskamy kombinację Ctrl + G. Pojawi się wtedy menu grupowania obiektów. Możemy wybrać jedną spośród trzech pozycji:

Add to Existing Group – pozwala wybrać istniejącą grupę,

do której zostaną dodane zaznaczone obiekty;

Rysunek 49: Menu grupowania

Add to New Group – Blender utworzy nową grupę, której nada standardową nazwę Remove from All Groups – usunie obiekty ze wszystkich grup, w których obecnie się

(Group, Group.001 itp.), a następnie przypisze do niej zaznaczone obiekty;

32
znajdują. Sprawdzenie, w jakich grupach znajduje się aktywny obiekt, jest bardzo łatwe – wystarczy zerknąć do okienka narzędziowego Object and Links (rysunek 50). Wciśnięcie krzyżyka znajdującego się z prawej strony pól z nazwami grup spowoduje usunięcie obiektu z wybranej grupy. Za pomocą pól oznaczonych GR: możemy również szybko zmienić nazwy grup, do których należy dany obiekt. Grupowanie możliwość W tym obiektów można wykorzystać na wiele sposobów, jednak najczęściej używaną jest zaznaczenia celu wszystkich jeden obiektów w obrębie jednej grupy. zaznaczamy

Rysunek 50: Okienko narzędziowe Object and Links

Skróty klawiaturowe
Ctrl + G Shift + G Menu grupowania obiektów Menu zaznaczania według grupy

obiekt, który należy do interesującej nas grupy, następnie rozwijamy menu zaznaczania według grupy (Shift + G) i wybieramy pozycję Objects in Same Group. Wszystkie obiekty znajdujące się w tej samej, co obiekt aktywny, grupie również zostaną zaznaczone. Rozdział 6.6. Warstwy Blender posiada jeszcze jedno narzędzie pomagające w zarządzaniu obiektami, a są nim warstwy. Każdy obiekt (wizualny i niewizualny) może być umieszczony na jednej z 20 warstw. Blender daje nam możliwość zadecydowania, na której warstwie chcemy teraz pracować; pozwala również na zaznaczenie kilku warstw naraz. Warstwy są używane najczęściej do dwóch celów:

Rozdzielenie elementów pomocniczych, ścieżek (szablonów), z których są wytłaczane Wizualne podzielenie sceny na różne obiekty – dla przykładu: budynki, naturę,

bryły od gotowych obiektów;

postacie, efekty specjalne itp. Używanie warstw jest czynnością jeszcze łatwiejszą niż korzystanie z grup obiektów. Aby przełączyć się na jedną z dwudziestu warstw, możemy (będąc w trybie obiektowym) wybrać ją z przybornika znajdującego się w nagłówku okna podglądu 3D (rysunek 51), klikając lewym przyciskiem

Rysunek 51: Przełączniki warstw

myszki w odpowiednie pole. Jeśli chcemy przełączyć kilka warstw, wystarczy podczas klikania przytrzymać wciśnięty klawisz Shift. Dodatkowo, klawisz tyldy (~) pozwala na przełączenie widoczności wszystkich warstw. Jeśli nie włączyliśmy opcji emulowania numpada, do warstw możemy dostać się również, używając klawiszy 1, 2, 3, ..., 9, 0 (dla warstw 1-10) oraz Alt + 1, 2, 3, ..., 9, 0 (dla warstw 11 – 20).

33
W jaki sposób umieszczać obiekty w warstwach? Jest to również bardzo łatwe: wystarczy zaznaczyć wszystkie obiekty, które chcemy przenieść do innej warstwy, a następnie nacisnąć klawisz M. Pojawi się wtedy okienko, w którym możemy dokonać wyboru warstwy (rysunek 52). Możemy tam kliknąć jeden z przycisków symbolizujących odpowiednie warstwy – bądź wcisnąć odpowiadający danej warstwie klawisz (klawisze działają w tym okienku niezależnie od ustawienia opcji emulacji numpada).
Alt + 1 - 0 M

Rysunek 52: Okienko przenoszenia obiektów pomiędzy warstwami

Skróty klawiaturowe
1 - 0 Przełącza widoczność warstwy 1 - 10 Przełącza widoczność warstwy 11 - 20 Przenoszenie obiektów między warstwami

34
Rozdział 7. Zaczynamy modelować! W tym rozdziale nauczymy się podstaw modelowania – dodawania prymitywów na scenę, prostego oświetlenia, umieszczenia kamery i na koniec wykonamy render przygotowanej przez siebie sceny. Przygotujemy prosty model wnętrza magazynu z paczkami. Na scenie domyślnie umieszczony jest sześcian. Powielimy go, by uzyskać więcej kontenerów. Przełączmy się na widok z góry (top), a następnie jego kopię. W momencie, gdy skorzystamy skrótu, Blender utworzy kopię obiektu, a następnie automatycznie przejdzie w tryb przenoszenia – wystarczy poruszyć myszką, by ustawić kopię w innym miejscu. Kliknięcie powoduje ustawienie kopii w nowym miejscu. Powtórzmy obróćmy czynność kilkakrotnie. Potem za nie okno podglądu są (domyślnie, ale
Num 0 Shift + D Alt + D

Skróty klawiaturowe
Num 1 Num 3 Num 7 Widok z przodu Widok z prawej Widok z góry

zaznaczmy

sześcian.

Następnie

skorzystajmy ze skrótu Shift+D, by utworzyć

ze Shift + Num 1 Widok z tyłu
Shift + Num 3 Widok z lewej Shift + Num 7 Widok z dołu Num 5 Przełączanie widoku ortogonalnego i perspektywicznego Przełącz na widok z kamery Duplikacja obiektu Utworzenie referencji obiektu (wszystkie zmiany w oryginale będą również stosowane do jego referencji)

pomocą środkowego przycisku myszki). Skrzynki porozrzucane, wyglądają zbyt naturalnie, skierowane pod

tym samym kątem. Przejdźmy do widoku z góry i obróćmy je w różnych kierunkach. Aby obrócić obiekt, należy go zaznaczyć, a następnie nacisnąć klawisz R. Domyślnie, obiekt będzie obracany wokół osi prostopadłej do pola widzenia. Możemy wymusić obrót wokół konkretnej osi układu współrzędnych, wciskając podczas obracania klawisze X, Y lub Z. Podwójne wciśnięcie klawisza X, Y współrzędnych wystarczy kliknąć.

Rysunek 53: Kilka skopiowanych sześcianów
zaznaczonego obiektu. Skrzynki

lub Z spowoduje obrót wokół lokalnego układu obracamy myszką; aby zatwierdzić konkretne położenie

Rysunek 54: Obrócone skrzynki

35
Przygotujmy drugi i trzeci poziom skrzynek. Przełączmy się do widoku z przodu, zaznaczmy którąś skrzynkę i zduplikujmy ją, przenosząc do góry i ustawiając skrzynkach. postawiona skrzynkach. ze skrótu na już istniejących wróćmy do Następnie na
G R S GX, GY i GZ

Skróty klawiaturowe
Przenoszenie (Grab) Obracanie (Rotate) Skalowanie (Scale) Ograniczenie przenoszenia do konkretnej osi układu współrzędnych

widoku z góry i przenieśmy tak, by stała, kilku niższych realizujemy G. skróty Przenoszenie

Ograniczenie przenoszenia do GXX, GYY i GZZ konkretnej osi lokalnego układu współrzędnych obiektu RX, RY i RZ Ograniczenie obrotu do konkretnej osi układu współrzędnych

podobnie, jak obracanie, ale korzystając klawiaturowego opisane obok Wykorzystując stosiku. Wykonamy teraz render przygotowanej sceny. W Blenderze scena pokazana jest schematycznie, w sposób ułatwiający projektowanie, ale nie

klawiaturowe, utwórzmy kolejne piętra

Ograniczenie obrotu do konkretnej RXX, RYY i RZZ osi lokalnego układu współrzędnych obiektu SX, SY i SZ Ograniczenie skalowania do konkretnej osi układu współrzędnych

Ograniczenie skalowania do SXX, SYY i SZZ konkretnej osi lokalnego układu współrzędnych obiektu

nadający się do zaprezentowania. Proces, w którym na wszystkie obiekty znajdujące się na scenie nakładane są materiały, a następnie są oświetlane w celu przygotowania ich „zdjęcia”, nazywa się właśnie renderowaniem. Należy pamiętać, że do renderowania sceny potrzebna jest zawsze zawieszona w trójwymiarowym świecie kamera, która „patrzy” na obszar, który będziemy chcieli zobaczyć W na wyrenderowanym „zdjęciu”. domyślnej

scenie Blendera (o ile jej nie usunęliśmy), zawsze znajduje się kamera patrząca na środek układu współrzędnych i z niej właśnie skorzystamy. Aby wyrenderować przygotowaną scenę, należy wcisnąć przycisk F12.

Rysunek 55: Gotowy stosik skrzynek Skróty klawiaturowe
F12 Renderuj scenę

Otrzymany obrazek może nie do końca odpowiadać naszym oczekiwaniom. Skrzynki są oświetlone bardzo jaskrawo, kamera jest zbyt blisko i skrzynki wystają poza kadr itd. Poprawmy scenę: z użyciem widoków (z góry, z boku i z prawej) przesuńmy kamerę tak, aby obejmowała całą

36
scenę (aby przełączyć się do widoku kamery, można użyć skrótu klawiaturowego Num 0), a następnie przenieśmy światło za kamerę. Wyrenderujmy scenę teraz. Powinniśmy otrzymać już scenę wyglądającą zgodnie z naszymi oczekiwaniami.

Rysunek 57: Wyrenderowana scena
Dodajmy jeszcze otoczenie do sceny – podłogę, ściany i sufit magazynu, w którym leżą skrzynki. W tym celu skorzystamy z dużego sześcianu, wewnątrz którego umieścimy nasze skrzynki. Aby dodać obiekt na scenę, można skorzystać z narzędziowego menu kontekstowego, które wyświetlić można za pomocą klawisza spacji lub przytrzymując na scenie przycisk zaznaczenia. Upewnijmy się, że znajdujemy się w widoku z góry (Num 7), a następnie wyświetlamy menu kontekstowe i wybieramy pozycje: Add | Mesh | Cube. Z użyciem poznanych już metod (skalowania, przenoszenia i obracania) ustawmy nowo dodany sześcian tak, by stał się pojemnikiem dla już istniejących. Warto skorzystać ze skrótu klawiaturowego Z, który przełącza widok wypełnionych brył i ich siatek. Wyrenderujmy wciskając przycisk F12. Aby uzyskać efekt cienia, przenieśmy przygotowaną scenę,
Spacja Z

Rysunek 56: Scena przygotowana do renderowania

Rysunek 58: Scena z dodanym sześcianem - magazynem

Skróty klawiaturowe
Narzędziowe menu kontekstowe Przełącza tryb wypełnionych brył i siatki

37
jeszcze światło tak, by oświetlało skrzynki z boku. Finalny render powinien wyglądać mniej więcej tak:

Rysunek 59: Finalny render zaprojektowanej sceny

38
Rozdział 8. Tryb edycji Zestaw prymitywów Blendera jest dosyć ubogi i jest mało prawdopodobne, że wymarzoną scenę uda się zbudować tylko za ich pomocą. Dlatego też Blender wyposażony jest w potężne narzędzie, dzięki któremu można wymodelować praktycznie wszystko, co przyjdzie nam na myśl: tryb edycyjny. Poświęcimy mu kilka następnych rozdziałów, poznając różne techniki modelowania oraz narzędzia, które wspomagają projektanta podczas edycji brył. Rozpocznijmy od wymodelowania ściętego ostrosłupa. Zanim położymy ręce na klawiaturze i myszce, warto wyobrazić sobie, co chcemy otrzymać; naszym celem będzie uzyskanie bryły widocznej na rysunku 60. Zobaczymy również, że do tego samego rezultatu można dojść kilkoma drogami – do nas należy tylko wybór jednej z nich. Pierwszą metodą będzie proste zmodyfikowanie wierzchołków. Wystarczy bowiem dostrzec, że – choć może nie widać tego na pierwszy rzut oka – nasz ścięty ostrosłup jest bardzo podobny do sześcianu: różnią się „tylko” położeniem czterech „górnych” wierzchołków. Jeśli w naszych domyślnych ustawieniach na scenie nie znajduje się sześcian, dodajemy go za pomocą menu narzędziowego. Warto przy okazji zwrócić uwagę na kilka szczegółów; po pierwsze - Blender automatycznie przechodzi do trybu edycji zaraz po wstawieniu nowego prymitywu na scenę. Po drugie – wstawiany prymityw jest zawsze prostopadły do osi danego okna podglądu: spróbujmy obrócić go, korzystając ze środkowego przycisku myszki, a potem dodajmy znów sześcian – będzie on dopasowany do konkretnego widoku.
Tab

Rysunek 60: Ostrosłup ścięty Skróty klawiaturowe
Przełączanie trybu edycji

Rysunek 61: Widok sześcianu w trybie edycji

Jeśli nie znajdujemy się w trybie edycji, przejdźmy do niego z pomocą klawisza Tab. Rysunek 61 przedstawia wygląd okna podglądu 3d zaraz po przejściu do trybu edycji. Gdy uczynimy to zaraz po dodaniu bryły na scenę, Blender domyślnie zaznaczy wszystkie wierzchołki, krawędzie i ściany danej bryły. Odznaczmy je za pomocą klawisza A – wtedy to, co widzimy na scenie, będzie bardziej przypominało rysunek. Warto również sprawdzić, czy jesteśmy w trybie

39
pokazywania siatki, czy wypełnionych ścian (klawisz Z). Warto dostrzec wyraźny podział bryły na trzy elementy – fioletowe wierzchołki, czarne krawędzie i niebieskie ściany. Edycję musimy jednak ograniczyć do jednej z powyższych grup naraz – nie jest możliwe operowanie jednocześnie np. na ścianach i wierzchołkach. Blender pozwala nam wybrać grupę elementów, którymi się zajmujemy – robimy to za pomocą przycisków umieszczonych w pasku nagłówka okna podglądu 3d (Rysunek 62). Aby przejść do trybu edycji wierzchołków, należy wybrać pierwszy z Zaznaczmy zaznaczenia kilka wierzchołków, wskazuje aby

Rysunek 62: Przyciski przełączające edytowane elementy - wierzchołki, krawędzie i ściany

trzech przycisków; drugi włącza tryb modyfikacji krawędzi, trzeci – ścian. dostrzec ciekawą własność: Blender, oprócz wierzchołka, również
A

Skróty klawiaturowe
Zaznacz wszystko / odznacz wszystko (działa prawie we wszystkich trybach)

krawędzie, które do niego prowadzą. Bardzo ułatwia to edycję skomplikowanych brył –

można bowiem szybko zobaczyć, czy zaznaczyliśmy ten wierzchołek, który chcieliśmy. Ponadto, jeśli zaznaczymy dwa wierzchołki połączone krawędzią, to po przejściu do trybu edycji krawędzi będzie ona również zaznaczona. Analogicznie – gdy zaznaczymy wierzchołki otaczające jakąś ścianę, będzie ona zaznaczona w odpowiednim trybie edycyjnym. Sposób ten działa również vice versa. Wszystkie zaznaczone elementy podlegają trzem podstawowym przekształceniom: translacji, obrotowi oraz skali. Przekształceń tych dokonuje się dokładnie tak samo, jak w trybie edycji sceny – czyli za pomocą przycisków, odpowiednio: G, R oraz S. Należy jednak zapamiętać bardzo ważny fakt: otóż przekształcenie obrotu oraz skali wykonywane jest wokół punktu stanowiącego medianę (średnią) położeń zaznaczonych wierzchołków. Na przykład, gdy zaznaczymy cztery wierzchołki tworzące kwadrat, wszelkie przekształcenia będą dokonywane wokół jego geometrycznego środka. Co więcej, jeśli explicite tego nie zażądamy (za pomocą przycisków X, Y oraz Z), przekształcenia będą korzystały z osi widoku danego podglądu 3d: jeśli, na przykład, patrzymy na scenę z góry (widok Num 7), wszelkie przekształcenia będą wykonywane wokół osi OZ lokalnego układu współrzędnych. Najłatwiej jest przekonać się o powyższym fakcie samemu, wykonując kilka przekształceń wierzchołków dodanej na scenę bryły. Wróćmy jednak do naszego ostrosłupa. Aby zmodyfikować wierzchołki, będziemy musieli je wcześniej zaznaczyć. Można to zrobić na trzy sposoby:

Explicite wskazać wszystkie wierzchołki, używając klawisza Shift, by dołączyć kolejne Ustawić wygodny widok 3d, a następnie zaznaczyć wierzchołki, używając ramki

wierzchołki do zaznaczenia;

(klawisz B);

40

Narysować nieregularne zaznaczenie dookoła punktów za pomocą przyciśniętego

klawisza Ctrl i prawego przycisku myszy. Rysunki 63, 64 i 65 przedstawiają różne sposoby zaznaczania wierzchołków.

Rysunek 63: Zaznaczanie pojedynczych wierzchołków
rysunku 66.

Rysunek 64: Zaznaczanie za pomocą prostokątnej ramki

Rysunek 65: Zaznaczanie za pomocą dowolnego kształtu

Rezultat zaznaczania wierzchołków możemy zobaczyć na Pozostało nam już tylko przekształcenie wierzchołków tak, by sześcian stał się ściętym ostrosłupem. Przejdźmy do widoku z góry, dzięki czemu wszystkie przekształcenia będą dokonywane wokół osi OZ, włączmy narzędzie skalowania (S), przesuńmy kursor myszy i kliknijmy. Powinniśmy uzyskać widok podobny do Rysunku 67. Obróćmy okienko podglądu – i voila!

Rysunek 66: Zaznaczone cztery górne wierzchołki sześcianu

Poznamy teraz drugą metodę, która pozwoli nam uzyskać ścięty ostrosłup – metodę wytłaczania. Wróćmy do trybu obiektowego i usuńmy uzyskaną bryłę za pomocą klawisza lub X.

Rysunek 67: Przeskalowane górne wierzchołki sześcianu

DEL

Następnie, patrząc z

góry, dodajmy na scenę kwadrat (Menu narzędziowe | Add | Mesh | Square) i umieśćmy go w środku układu współrzędnych. Upewnijmy się teraz, że znajdujemy się w trybie edycji. Następnie zaznaczamy wszystkie wierzchołki kwadratu. Przełączmy się teraz do widoku z boku bądź z przodu. Wciśnijmy przycisk E (ang. Extrude, wytłaczanie). Blender spyta

Rysunek 68: Kwadrat (siatka) Skróty klawiaturowe
E Wytłaczanie

41
nas, czy chcemy wytłoczyć cały obszar (Region), same krawędzie (Only edges) czy same wierzchołki (Only vertices). Różnice pomiędzy trzema powyższymi trybami sprowadzają się do tego, że w trybie obszaru wytłoczone zostają wszystkie zaznaczone ściany, w trybie krawędzi – zaznaczone krawędzie (wytłoczona część nie będzie miała powierzchni), zaś w trybie wierzchołków – same pojedyncze wierzchołki (nie zostaną one połączone krawędziami). Nasza bryła (ostrosłup ścięty) ma być zamknięta, dlatego też wybieramy tryb obszaru. Następnie przesuwamy wskaźnik myszki do góry, dzięki czemu wykonujemy wytłoczenie. Otrzymamy teraz graniastosłup lub sześcian. Aby otrzymać ostrosłup ścięty, wystarczy przeskalować górną ścianę, podobnie jak w poprzednim sposobie.

Rysunek 69: Od lewej: kwadrat, kwadrat wytłoczony w trybie obszaru, krawędzi i wierzchołków.
Kolejny sposób, który poznamy, będzie korzystał z narzędzia o nazwie nóż (ang. knife). Dodajmy na scenę stożek – na pytanie, z ilu wierzchołków podstawy ma się składać, wpisujemy 4: dzięki temu na scenę zostanie wstawiony ostrosłup prawidłowy czworokątny (o podstawie kwadratu). Popatrzmy na scenę z boku, przejdźmy do trybu edycji, a następnie zaznaczmy wszystkie wierzchołki (rys. 70). Zauważmy, że gdybyśmy ścięli ostrosłup mniej więcej w połowie, otrzymalibyśmy... no, właśnie ostrosłup ścięty. Skorzystajmy zatem z narzędzia nóż osiągalnego pod klawiszem K (narzędzie to działa tylko w trybie edycji). Po wciśnięciu klawisza K pojawia się menu, które pozwala na wybranie jednej z czterech opcji:

Rysunek 70: stożek z czterema wierzchołkami podstawy, czyli ostrosłup.

Loop

cut

cięcie

po

zamkniętej pozostawiam

pętli jako

(wypróbowanie ćwiczenie);

tego

narzędzia

Skróty klawiaturowe
K Nóż

Knife (Exact) – jest to narzędzie noża, które

42
podzieli krawędzie dokładnie w taki sposób, w jaki je przetniemy (w tych samych miejscach);

Knife (Midpoints) – wszystkie krawędzie, które zaznaczymy do przecięcia, zostaną Knife (Multicut) – działa jak Knife (Midpoints), ale pozwala na wybranie, ile

przecięte dokładnie w ich połowie;

razy mają zostać pocięte krawędzie (np. ustawienie dwóch cięć spowoduje, że krawędzie zostaną podzielone na trzy części). Każdy tryb noża pozwala na wykonanie kilku cięć. Każde cięcie jest kończone przez kliknięcie myszką, zaś jeśli chcemy zakończyć cały proces cięcia, wystarczy wcisnąć klawisz Enter. Do naszych potrzeb najlepiej nada się Knife (Midpoints) – zgodnie z zasadą, że odcinek łączący środki dwóch boków trójkąta jest równoległy do podstawy. Tniemy ostrosłup tak, jak jest to widoczne na rysunku 71. Kąt, pod jakim przetniemy krawędzie boków ostrosłupa, nie ma żadnego znaczenia, bowiem Knife w trybie Midpoints i tak przetnie krawędzie dokładnie w połowie (rysunek 72). Połowa roboty już za nami – trzeba zrobić jeszcze dwie rzeczy. Po pierwsze – zaznaczyć i usunąć wierzchołek ostrosłupa – dzięki temu otrzymamy faktycznie ostrosłup ścięty. Nie będzie miał on jednak górnej ściany (czy wiesz, dlaczego?), którą musimy dodać ręcznie. W tym celu zaznaczamy cztery wierzchołki, które będą ją tworzyły i wciskamy klawisz F (rysunek 73). Pozwolę tu sobie na pewną dygresję. Podczas modelowania zaawansowanych brył często zachodzi potrzeba wypełnienia ścianami dużych obszarów. Rozważmy siatkę (bryłę) składającą się z okręgu znajdującego się wewnątrz kwadratu. Chcemy ten kształt wytłoczyć, jednak jeśli to zrobimy, będzie nam brakowało ścian zamykających 74 widać górną Moglibyśmy wytłoczony obiekt (na

Rysunek 71: Sposób, w jaki tniemy ostrosłup - kąt nie ma znaczenia

Rysunek 72: Przecięty ostrosłup

Skróty klawiaturowe
F Shift + F Alt + F Dodawanie ścian Automatyczne dodawanie ścian Poprawianie dodanych ścian (Beauty Fill)

rysunku brakującą ścianę).

oczywiście utworzyć je,

Rysunek 73: Dodawanie ściany

dodając odpowiednie krawędzie i budując z nich ścianki, ale okaże się, że taka praca jest bardzo żmudna, gdy przypomnimy

43
sobie, że ściany budowane za pomocą narzędzia F mogą mieć tylko trzy lub cztery krawędzie. Na szczęście Blender udostępnia również dwa dodatkowe narzędzia, które pomagają w podobnej sytuacji. Pierwsze z nich to autowypełnienie. Aby automatycznie wypełnić ścianami brakującą przestrzeń, wystarczy zaznaczyć wierzchołki, które mają ją budować, a następnie wcisnąć kombinację klawiszy Shift + F. Blender wypełni przestrzeń, jak to widać na rysunku 75. Może się jednak okazać, że wypełnienie jest wykonane w sposób utrudniający dalszą obróbkę. Możemy wówczas zmusić Blendera, by wypełnienie to Fill – jest ono dostępne pod skrótem Alt + F. Dla przykładu użyto dwóch okręgów o różnych liczbach wierzchołków. Po użyciu narzędzia automatycznie wypełniającego powierzchnię,

Rysunek 74: Brakujące ściany

poprawił - w tym celu należy użyć narzędzia Beauty

otrzymamy efekt widoczny na rysunku 76. Z kolei, zmuszenie Blendera do poprawienia wypełnienia za pomocą Beauty Fill przekształciło wypełnienie na widoczne na rysunku 77. Dzięki temu (jak sugeruje nazwa narzędzia) wygląda ono o wiele bardziej estetycznie (regularnie) i ułatwi dalszą pracę nad tą bryłą.

Rysunek 75: Automatycznie dodane ściany

Rysunek 76: Niewygodne rozłożenie automatycznie dodanych ścian

Rysunek 77: Wypełnienie poprawione za pomocą Beauty Fill

44
Ostatnim ze sposobów jest wytoczenie

ciężkiej artylerii – operacji boole'owskich. W przypadku tak prostej bryły jest to jak strzelanie ze Sparrowa do wróbla, ale warto poznać i tę metodę – najczęściej używa się jej do drążenia różnych dziur lub „sklejania” brył w jedną całość. Podobnie, jak w poprzednim przykładzie, wstawmy na scenę ostrosłup (stożek). Rezultat możemy otrzymać na dwa sposoby – za pomocą intersekcji (część wspólna) bądź substrakcji (odejmowania). Skorzystajmy z tej pierwszej: umieśćmy na scenie sześcian w taki sposób, by część wspólna jego oraz ostrosłupa dawała szukaną przez nas bryłę. Rysunek 78 obrazuje poprawne rozmieszczenie sześcianu i ostrosłupa. Operacje boole'owskie wykonuje się na dwóch bryłach. Zaznaczmy teraz sześcian i ostrosłup, wciśnijmy przycisk W i z menu wybierzmy Intersect (przekrój zbiorów). W zależności od tego, jak rozmieściliśmy bryły, mogą pokazać się tajemnicze dodatkowe krawędzie albo nie pokaże się nic. Dzieje się tak dlatego, że bryła powstała z operacji boole'owskiej znajduje się dokładnie w tym samym miejscu, co bryły, na których operacja była wykonywana – i bryły te po

Rysunek 78: Ostrosłup wewnątrz sześcianu.

Rysunek 79: Ostrosłup ścięty jako część wspólna dwóch brył

prostu ją zasłaniają. Kliknijmy w miejscu, w którym powinna się znajdować i przenieśmy ją gdzieś indziej za pomocą klawisza G. Faktycznie otrzymaliśmy spodziewaną bryłę – ostrosłup ścięty. Warto również zapamiętać, że efekty operacji boole'owskich – w wyniku użytych algorytmów obliczania sumy, części wspólnej i różnicy zbiorów – powodują czasami pojawienie się różnych defektów siatki – na przykład wierzchołków w miejscach, gdzie nie są one potrzebne. W powyższym przykładzie na dolnej ścianie ostrosłupa ściętego pojawił się dodatkowy, zbędny z naszego punktu widzenia, wierzchołek.

Rysunek 80: Siatka bryły uzyskanej za pomocą operacji boole'owskich

Rozwiązania są dwa; pierwsze – to po prostu niestosowanie operacji boole'owskich do

45
modelowania brył. Niestety, w niektórych przypadkach jest to nieuniknione – modelowanie bryły innymi metodami może okazać się zbyt czaso- i pracochłonne (a czasami wręcz niemożliwe). W tej sytuacji pozostaje nam drugie wyjście - ręczne poprawienie otrzymanych brył w trybie edycyjnym. Poza czterema opisanymi metodami istnieje mnóstwo innych sposobów, które pozwalają na otrzymanie ostrosłupa ściętego; część z nich poznamy w trakcie dalszej nauki. Warto jednak wyciągnąć z tego rozdziału kilka wniosków: Najprostszym sposobem na otrzymanie ostrosłupa ściętego okazało się

przeskalowanie czterech wierzchołków sześcianu. Starajmy się zawsze wybierać najprostszą i najmniej kłopotliwą drogę do osiągnięcia zamierzonego celu. Ponadto czasem okazuje się, że istnieje już prosta metoda na wymodelowanie określonej bryły – warto poszukać czasem różnych tutoriali w internecie, by oszczędzić sobie zbędnej pracy.

Blender daje możliwość szczegółowej edycji brył – z przesuwaniem i przekształcaniem

pojedynczych wierzchołków oraz ich grup włącznie (translacja, obrót i skala – klawisze G, R i S). Ściany (trójkąty bądź czworoboki) dodajemy ręcznie za pomocą klawisza F bądź automatycznie – za pomocą skrótu Shift + F
● ●

Krawędzie kroimy za pomocą narzędzia Knife (K). Wszystko da się wymodelować – jest to tylko kwestia czasu i zapału projektanta.

46
Rozdział 9. Kilka słów o krzywych Mimo że w Blenderze możemy modelować tylko wielościany, niejednokrotnie przyjdzie nam projektować obiekty, które są w różnych miejscach okrągłe, zawierają różnego rodzaju łuki. Interpolowanie ich ręcznie byłoby bardzo trudne i czasochłonne, więc Blender udostępnia nam narzędzie, które proces ten znacznie ułatwia – są to krzywe Beziera. Warto je dokładnie poznać, bowiem są one wykorzystywane nie tylko do modelowania (wystarczy wspomnieć choćby krzywe IPO).

Rysunek 81: Krzywa Beziera
Dodajmy więc na scenę krzywą Beziera (Menu podręczne | Add | Curve | Bezier Curve) i przyjrzyjmy się jej. Krzywa jest budowana za pomocą wierzchołków oraz ich punktów kontrolnych. Wierzchołek ustala rozłożenie krzywej w przestrzeni (krzywa musi przejść przez każdy ze swoich wierzchołków), natomiast typ oraz położenie jego punktów kontrolnych determinuje zachowanie krzywej w danym miejscu. Każdy wierzchołek ma dwa punkty kontrolne, które są z nim połączone odcinkami o różnych kolorach – informują nas one, jakiego typu jest punkt. Popatrzmy na rysunek 82. Możemy tam zobaczyć cztery krzywe: każda składa się z trzech wierzchołków. Wszystkie wierzchołki znajdujące się na brzegach krzywych są ostre, natomiast środkowe wierzchołki są różnych typów, od góry: wierzchołek ostry, wierzchołek Beziera, wyrównany wierzchołek Beziera, wierzchołek automatyczny.

● ● ● ●

Przeanalizujmy teraz, jak zachowuje się krzywa w każdym z wymienionych rodzajów wierzchołka.

47
Wierzchołek żadnego zawsze łuku). wskazują ostry powoduje kontrolne Próba ich

ostre zagięcie krzywej (nie ma tam Punkty następny/poprzedni

wierzchołek

krzywej.

przeniesienia spowoduje automatyczną konwersję wierzchołka na wierzchołek Beziera. rozpoznajemy Wierzchołek po zielonym ostry kolorze

odcinków łączących wierzchołek z jego punktami kontrolnymi. Aby zmienić typ wierzchołka na wierzchołek ostry, należy go zaznaczyć, a następnie nacisnąć klawisz V. Wierzchołek Beziera jest

pewną odmianą wierzchołka ostrego. Za pomocą punktów kontrolnych możemy skonstruować pół-styczne do krzywej

Rysunek 82: Rodzaje punktów kontrolnych Skróty klawiaturowe
V H Shift + H Przełącza typ wierzchołka na ostry Przełącza typ wierzchołka na wierzchołek Beziera lub wyrównany wierzchołek Beziera. Przełącza typ wierzchołka na automatyczny.

(styczne kierunkowe) w dwóch kierunkach – każdy z punktów kontrolnych ustala jej kąt i długość. Aby zmienić typ wierzchołka na wierzchołek Beziera, należy go zaznaczyć, a następnie nacisnąć klawisz H. Klawisz H przełącza również typ na wierzchołka z wierzchołka Beziera wyrównany

wierzchołek Beziera i vice versa. Wierzchołki Beziera rozpoznajemy po czarnych odcinkach łączących wierzchołek z punktami kontrolnymi. Zwróćmy uwagę na następujący fakt: ponieważ osobno ustalamy styczną w dwóch kierunkach krzywej, nie mamy żadnej pewności, że w tym wierzchołku krzywa będzie gładka. Aby tak było, oba punkty kontrolne musiałyby budować pół-styczne leżące na wspólnej prostej. Nie musimy jednak ręcznie ustawiać ich w taki sposób – zapewnia to następny rodzaj wierzchołka – wyrównany wierzchołek Beziera. Wyrównany wierzchołek Beziera to taki wierzchołek Beziera, w którym determinujemy jednoznacznie styczną do krzywej w obu kierunkach. Oznacza to, że każda próba przeniesienia jednego z punktów kontrolnych natychmiast spowoduje przeniesienie drugiego tak, by zachowany

48
został wspólny kąt nachylenia stycznej. Możemy natomiast niezależnie manipulować długością pół-stycznych – determinując prędkość krzywej w danym wierzchołku. Wyrównany wierzchołek Beziera rozpoznajemy po różowych odcinkach łączących wierzchołek z punktami kontrolnymi. Aby przełączyć typ wierzchołka na wyrównany wierzchołek Beziera, należy użyć klawisza H. Wierzchołek automatyczny jest natomiast automatycznie obliczany przez Blendera. Krzywa w wierzchołku automatycznym jest zawsze gładka, a prędkość krzywej i kąt stycznej do niej w tym miejscu jest obliczany na bazie odległości i położenia danego wierzchołka w stosunku do jego sąsiadów. Wierzchołek automatyczny jest reprezentowany przez żółte odcinki łączące wierzchołek z punktami kontrolnymi. Aby przełączyć wierzchołek w tryb automatyczny, należy skorzystać ze skrótu Shift + H. Warto zauważyć, że wierzchołki nie muszą być jednolite. Oznacza to, że – na przykład – jeden z punktów kontrolnych może być ostry, zaś drugi – wierzchołkiem Beziera. Aby zmienić typ punktu kontrolnego, postępujemy tak samo, jak w przypadku wierzchołków: zaznaczamy go, a następnie korzystamy ze skrótu klawiaturowego V, by uzyskać punkt ostry, bądź H, by otrzymać punkt Beziera lub wyrównany punkt Beziera. Wierzchołek automatyczny wymaga jednak, by oba jego punkty kontrolne miały odpowiedni typ – dlatego też nie jest możliwe przełączenie pojedynczego punktu kontrolnego w tryb automatyczny – Blender przełączy go wtedy na punkt Beziera. Dwa wierzchołki przeważnie nie wystarczają do zbudowania całej krzywej. Jest kilka metod dodawania nowych wierzchołków. Pierwszą, najprostszą, jest „doklejenie” wierzchołka do końca krzywej. W tym celu należy zaznaczyć wierzchołek, a następnie, przy wciśniętym klawiszu Ctrl, kliknąć prawym przyciskiem myszy. W miejscu, w którym znajduje się kursor myszy, zostanie wstawiony kolejny wierzchołek połączony zaznaczonym. Innym sposobem jest podzielenie dwa menu już istniejącej wcisnąć Subdivide. krzywej. Wystarczy wybrać wierzchołki, wybrać klawisz W, a następnie z z wcześniej

Rysunek 83: Niejednolity wierzchołek

Rysunek 84: Dodawanie nowego wierzchołka

Krzywa zostanie podzielona dokładnie w środku zaznaczonej sekcji. Jeśli nasza krzywa składa się z kilku części, możemy je ze sobą łączyć. Należy jednak

49
pamiętać, że krzywa jest ciągła – nie jest możliwe utworzenie wierzchołka, który będzie połączony z więcej niż dwoma innymi wierzchołkami. Aby połączyć wierzchołki dwóch osobnych krzywych (znajdujących się w obrębie jednego obiektu), należy je zaznaczyć, a następnie wcisnąć przycisk F. Ponadto przeważnie interesuje nas, by nasza krzywa była zamknięta. Nie da się jej jednak zamknąć poprzez utworzenie „brakującego” segmentu – w tym celu należy w trybie edycji wcisnąć klawisz C. Blender automatycznie domknie krzywą (połączy segmentem jej koniec z początkiem). Zobaczmy na przykładzie, w jaki sposób można używać krzywych do modelowania brył. W tym celu posłużymy się zdjęciem przedstawiającym logo książańskiego baru Huberta (rysunek 85). Blender daje możliwość wstawiania obrazów pod okna podglądu 3d – dzięki temu łatwiejsze jest na przykład modelowanie brył na podstawie ich blueprintów. Aby wstawić zdjęcie do tła okna podglądu, należy: z menu okna podglądu View wybrać

Background image,

w okienku, które się pokaże, wcisnąć Use

background image, a następnie wybrać plik zdjęcia, który znajdzie się w tle okna podglądu 3d. Dodajmy teraz do sceny krzywą Beziera i wymodelujmy ją za pomocą poznanych technik tak, by otaczała kremową część logo. Na początku przechodzimy do trybu edycji i umieszczamy oba wierzchołki krzywej tak, by pasowały do pewnego fragmentu kształtu, który chcemy wymodelować (rysunek 86). Na początku nie przejmujemy się punktami kontrolnymi, zajmiemy się nimi później.

Rysunek 85: Logo książańskiego Baru Huberta (czeka na akceptację)

Rysunek 86: Zaczynamy rozmieszczać wierzchołki krzywej

Za pomocą Ctrl+RMB dodajemy kolejne wierzchołki, rozmieszczając je na brzegu kształtu – z czasem będziemy umieli znaleźć takie miejsca kształtu, w których powinny znaleźć się punkty – oszczędzi nam to później pracy nad krzywą. Jeśli zajdzie potrzeba dodania kształtu, który jest oderwany od całości (np. pomiędzy przednimi nogami konia), w trybie edycji wybieramy menu podręczne i wybieramy Add | Bezier Curve. Pojawi się nowa krzywa (ale w obrębie edytowanego obiektu!) i będziemy mogli wypełnić lukę.

50
Po zakończeniu rozstawiania punktów powinniśmy otrzymać coś podobnego do rysunku 87, czyli generalnie jeden wielki chaos punktów. Dzieje się tak dlatego, że domyślnie wszystkie punkty są typu wygładzonego wierzchołka Beziera, a punkty kontrolne są ustawione poziomo. Wierzchołki w takiej postaci nie nadają się do edycji – za dużo pracy kosztowałoby nas teraz poustawianie punktów kontrolnych tak, by pasowały do krzywej. Pomożemy wskazuje sąsiednie sobie swoimi automatyką punktami Blendera: kontrolnymi więc pamiętamy, że ostry wierzchołek zawsze wierzchołki. Zaznaczmy

Rysunek 87: Rozstawione wierzchołki

wszystkie wierzchołki i skonwertujmy je na ostre (A, V). No, tak – nasza krzywa zaczyna przypominać modelowany kształt (rysunek 88). Teraz czeka nas żmudniejsza część pracy – trzeba ręcznie poprawić wszystkie wierzchołki tak, by pasowały do bryły. W miejscach, gdzie znajdują się łuki, starajmy się zawsze korzystać ma ostrego „kantu”. W moim przypadku proces „poprawiania” wierzchołków zajął około 15 minut. Efekt możemy obejrzeć na rysunku 89. Pozostało nam przygotowanie krzywej obrazującej ciemniejszą część kształtu. Wszystko okaże

Rysunek 88: Wierzchołki zmienione na ostre

z wierzchołków wyrównanych – dzięki temu będziemy mieli pewność, że w miejscu wierzchołka nie

Rysunek 89: Gotowa krzywa obrazująca jaśniejszą część kształtu.

51
się jednak o wiele łatwiejsze, jeśli zauważymy, że oba kształty są do siebie bardzo podobne – utwórzmy kopię kształtu, który przygotowaliśmy i usuńmy wierzchołki tak, by krzywa zaczęła przypominać ciemniejszą część kształtu. Następnie musimy ręcznie poprawić wierzchołki i punkty kontrolne, by pasowały do kształtu.

Skróty klawiaturowe
Alt + C Konwersja typu obiektu

Rysunek 90: Obie części kształtu są przygotowane
Pięć minut pracy – i otrzymujemy kolejną krzywą (rysunek 90). Tak przygotowane krzywe dają nam możliwość dalszej obróbki. Skonwertujmy teraz obie krzywe na siatki – w tym celu należy w trybie obiektowym zaznaczyć krzywą, wcisnąć Alt + C, a następnie wybrać Mesh. Teraz możemy użyć wytłaczania lub innych technik, by dalej obrabiać nasz kształt.

52

Rysunek 91: Przykładowe wykorzystanie krzywych

53
Rozdział 10. Zaawansowane techniki wytłaczania Wytłaczanie jest silnym narzędziem pozwalającym na łatwe modelowanie niektórych skomplikowanych brył – bowiem, oprócz zwykłego wytłaczania siatek, istnieje również wytłaczanie po ścieżce oraz wokół osi. Wszystkie rodzaje wytłaczania mają ze sobą pewną wspólną cechę – pracują na przekroju bryły. Za każdym razem, gdy będziemy chcieli wykonać wytłaczanie, warto upewnić się, że przygotowaliśmy dobry przekrój – od niego będzie zależał realizm wytłoczonego obiektu. Zacznijmy od wymodelowania aquaparkowej zjeżdżalni. Pierwszym elementem, który musimy wymodelować, jest przekrój zjeżdżalni (rysunek 92). Następnie musimy wskazać, po jakiej ścieżce chcemy wytłoczyć nasz kształt – będziemy zatem potrzebowali krzywej trójwymiarowej, której do tej pory nie używaliśmy. Do przełączenia krzywej w tryb 3d (pozwalający na dowolne przestrzenne ustawienie wierzchołków i punktów kontrolnych) służy przycisk 3D w okienku

Rysunek 92: Przekrój zjeżdżalni

narzędziowym Curve and surface. Przykład ścieżki, po której będziemy wytłaczać zjeżdżalnię znajduje się na rysunku 94. Zwróćmy uwagę na ciekawy fakt: podczas edytowania krzywej 3d pojawiły się na niej „tory” wskazujące, w jaki sposób krzywa zagina się w przestrzeni. Nazwijmy teraz ścieżkę wytłaczania „Sciezka”, zaś przekrój zjeżdżalni „Rynna”. Pozostało nam już tylko wykonanie wytłoczenia. Wykonujemy to poprzez:

Rysunek 93: Okienko Curve and Surface

Zaznaczenie

ścieżki,

po

której

będziemy wytłaczać obiekt;

Odszukanie okienka Curve and

Surface i wpisanie do pola BevOb nazwy naszego przekroju, czyli „Rynna”. Po wykonaniu powyższych czynności, otrzymamy wytłoczoną zjeżdżalnię (rysunek

Rysunek 94: Ścieżka, po której będziemy wytłaczać krzywą

95). Zarówno ścieżka wytłaczania, jak i przekrój muszą być krzywymi.

54
Drugi rodzaj wytłaczania – wytłaczanie wokół osi – jak sama nazwa wskazuje, służy do wytłaczania obiektów okrągłych. Dla przykładu wytłoczymy za pomocą tej techniki butelkę. Rozpoczynamy poprzednim przekrój bryły, którą podobnie, chcemy jak w przykładzie: przygotowujemy wytłoczyć

(Rysunek 96). Wytłaczanie wokół osi nie działa jednak dla krzywych Beziera – będziemy musieli najpierw przekształcić naszą krzywą na siatkę (Alt + C). Teraz zmieniamy widok tak, aby zobaczyć naszą siatkę „od góry” - to jest, aby oś naszego widoku była równoległa do osi, wokół której będziemy chcieli wytłaczać przekrój. Kolejnym krokiem będzie wskazanie osi obrotu. Użyjemy w tym celu kursora 3d. Poprawne ustawienie kursora w stosunku do obracanego obiektu obrazuje rysunek 98. Następnie przechodzimy do trybu edycji bryły i zaznaczamy wszystkie wierzchołki. Wszelkie ustawienia potrzebne do wykonania wytłoczenia po osi znajdują się w

Rysunek 95: Zjeżdżalnia wytłoczona po ścieżce

Rysunek 97: Okienko Mesh tools

okienku narzędziowym Mesh tools. Znajdują się tam trzy opcje:

Degr – determinująca, o ile stopni zostanie obrócony wyjściowy Steps – ile kroków zostanie wykonanych (tym samym, jak gęsta Turns – ile razy chcemy wykonać obrót.

wytłaczany kształt. Chcemy wykonać pełen obrót, więc ustawiamy 360o.

będzie siatka utworzonego obiektu). Ustawiamy tam wartość 24.

Jeśli wszystko ustawiliśmy poprawnie, pozostaje tylko naciśnięcie przycisku Spin, a następnie kliknięcie okna podglądu 3d, na którym mamy przygotowane obiekty do wykonania wytłaczania. Rezultat możemy obejrzeć na rysunku 99. Ale to jeszcze nie koniec pracy nad tym modelem. Musimy bowiem zauważyć, że niektóre wierzchołki naszej bryły się duplikują: te z oryginalnego kształtu, oraz te, które zostały wytłoczone podczas ostatniego, 24. obrotu. Musimy je usunąć, w przeciwnym wypadku

Rysunek 96: Przekrój

Rysunek 98: Ustawienie kursora do wytłaczania

55
będziemy mieli sporo problemów z bryłą (na przykład modyfikatory mogą nieprawidłowo działać). Dowodem na to, że wierzchołki faktycznie są podwojone, może być rysunek 100: zwróćmy uwagę na żółte krawędzie, które biegną od zaznaczonych wierzchołków. Prowadzą one tylko „do góry” – czyli zaznaczone wierzchołki nie mają żadnego połączenia ze znajdującymi się „poniżej” nich. Nie zmieniajmy widoku. Po wykonaniu operacji pozostaną zaznaczone wierzchołki ostatniego obrotu. Otoczmy teraz prostokątną ramką zaznaczone wierzchołki – zaznaczymy w ten sposób również wierzchołki, które się z nimi pokrywają. Nie zapomnijmy również o środkowym wierzchołku, który został powtórzony 24 razy. Wciśnijmy teraz przycisk W, który wywoła menu specjalne. Wybieramy z niego opcję Remove Doubles. Spowoduje to „sklejenie” dwóch pokrywających się wierzchołków w jeden. Przykładowy render z użyciem wymodelowanej butelki możemy obejrzeć na rysunku 102.

Rysunek 100: Podwójne wierzchołki przed usunięciem

Rysunek 101: Podwójne wierzchołki zostały usunięte

Rysunek 99: Gotowe wytłoczenie

56

Rysunek 102: Przykładowy render z użyciem wymodelowanej butelki

57
Rozdział 11. Materiały Wszystkie bryły, które renderowaliśmy do tej pory, były tylko szarymi obiektami wyglądającymi, jakby były wykonane z kartonu lub masy plastycznej. Nauczymy się teraz nadawać im różne materiały, dzięki którym będą wyglądały o wiele bardziej realistycznie. Gdybym zapytał Cię, czytelniku, jakie cechy charakteryzują materiał jakiegoś obiektu, zapewne odpowiedziałbyś, że kolor. Indagowany dodałbyś zapewne jeszcze przezroczystość oraz sposób, w jaki ów obiekt odbija światło (jako przykład można podać choćby lustro). Zdziwisz się zapewne, gdy zobaczysz, że cech takich (różnych!) jest kilkanaście (jeśli nie kilkadziesiąt). Słowo: materiał jest bardzo często mylone z teksturą. Poznajmy formalną definicję tych dwóch obiektów. Materiałem nazywamy zbiór cech, które decydują o reakcji promieni świetlnych padających na bryłę, na którą materiał jest nałożony. Definicję tą można trochę uprościć: materiał decyduje o tym, w jaki sposób dana bryła odbija światło. Jest to jednak znaczne uproszczenie, o czym przekonamy się w dalszej części tego rozdziału. Teksturą nazywamy pewien proceduralny bądź rastrowy rysunek, który pozwala na nieliniową modyfikację jednego z parametrów materiału poprzez określenie mapy intensywności działania tego parametru na obszarze pokrytym rysunkiem. Tekstura jest zatem pewnym elementem, który uczestniczy w budowaniu materiału. Zobaczmy więc, co oferuje nam Blender w zakresie opisywania cech materiałów. Pierwszą czynnością będzie nadanie materiału obiektowi – a właściwie: utworzenie materiału, który będziemy mogli przypisywać do obiektów. Blender – podobnie, jak w przypadku interface'u użytkownika – ma własną koncepcję dotyczącą edycji materiałów. W większości programów do obróbki grafiki trójwymiarowej materiały są dostępne do edycji w osobnych oknach i możemy je modyfikować niezależnie od obiektów. W Blenderze jest inaczej – materiały możemy modyfikować tylko „na obiekcie”, na który są nałożone. Dodatkowo nie można usuwać materiałów; jednak materiały, które nie mają żadnych użytkowników (czyli nie są przypisane do żadnej bryły) nie są zapisywane wraz z całym projektem – chyba, że tego explicite zażądamy. Aby utworzyć materiał i przypisać go do bryły, musimy zaznaczyć tę bryłę, a następnie przejść do okienka narzędziowego Links and Pipeline. Tam

Rysunek 103: Okienko Links and Pipeline

58
możemy wybrać materiał, który chcemy przypisać do obiektu, bądź utworzyć nowy (Add new), co też czynimy. Pokaże się seria okienek umożliwiających modyfikację materiału. Warto zauważyć, że materiałowi – podobnie, jak każdemu innemu obiektowi – możemy nadać nazwę. Przedstawię poniżej listę najważniejszych parametrów, za pomocą których możemy decydować o wyglądzie materiału. Kolor podstawowy (Diffuse color) jest

podstawowym elementem decydującym o kolorze materiału. Kolor podstawowy możemy modyfikować na dwa sposoby – używając suwaków RGB (czerwony – zielony – niebieski) bądź klikając na kolor (na rysunku 104 jest to szare pole na lewo od przycisku Col) – pojawi się wówczas większe okienko dające więcej możliwości edycji koloru.

Rysunek 104: Kolor podstawowy

Rysunek 105: Kolor podstawowy
Kolor odbijania światła (Specular color) – ustala, jakiego koloru będzie światło bezpośrednio odbite od obiektu. Ustawiamy go w podobny sposób, w jaki można ustawić kolor bezpośredni; jeśli chcemy skorzystać z suwaków RGB, musimy poinformować Blendera, który kolor chcemy edytować. W tym przypadku musimy wcisnąć przycisk Spe.

Rysunek 106: Kolor odbijania światła

59

Rysunek 107: Kolor odbijanego światła
Tylko cienie (OnlyCast) – obiekt, któremu zostanie nadany materiał z włączoną opcją OnlyCast, nie będzie renderowany, ale będzie rzucał cień. Możemy użyć tej opcji gdy chcemy, by na scenie pojawiło się kilka dodatkowych cieni.

Rysunek 108: Opcja OnlyCast

Rysunek 109: Włączona opcja OnlyCast - dla trzech ostatnich małpek

60
Odbicie lustrzane (Ray Mirror) – decyduje, czy materiał ma zachowywać się jak lustro. Jeśli tak, możemy ustawić kilka dodatkowych parametrów: RayMir – suwak pozwalający na ustawienie stopnia odbijania światła (0 – obiekt nie zachowuje się jak lustro, 1 – obiekt jest idealnym lustrem); Depth – decyduje, ile razy Blender ma odbijać promienie od lustrzanych obiektów. Zwiększenie tej opcji przy dużej liczbie obiektów lustrzanych może radykalnie wydłużyć czas renderowania obrazu; Fresnel – pozwala na zmniejszenie lub zwiększenie siły odbijania w zależności od kąta nachylenia danej ściany do osi kamery (patrz rysunek); Fac – ustala, jak gwałtownie ma działać Fresnel (patrz rysunek).

Rysunek 110: Parametr RayMir, od lewej: 0.0; 0.2; 0.4; 0.8; 1.0. Podłoga - 0.5.

Rysunek 111: RayMir = 0.5. Parametr Fresnel, od lewej: 0.0; 1.0; 2.0; 4.0; 5.0.

61

Rysunek 112: RayMir = 0.5; Fresnel = 5.0; Od lewej Fac = 1.0; 1.2; 1.3; 1.5; 1.6
Przezroczystość materiału (Ray Transp) – pozwala ustalić, czy materiał ma być przezroczysty. Stopień przezroczystości można kontrolować za pomocą poziomu alpha (dostępnego w okienku narzędziowym Material). Ponadto można ustawić kilka innych opcji: IOR – Indeks refrakcji (współczynnik załamania światła). Suwak ten pozwala na ustawienie poziomu załamywania promieni światła przez bryłę. Oto tabela ze współczynnikami załamania światła dla niektórych materiałów:

Rysunek 113: Poziom alpha materiału

Materiał Próżnia Powietrze (1013 hPa, 20oC) Woda Lód Alkohol etylowy Dwusiarczek węgla Jodek metylu Topiony kwarc Szkło (kron) Szkło (flint) Chlorek sodu (flint) 1 1.003 1.33 1.31 1.36 1.63 1.74 1.46 1.52 1.66 1.53

IOR

Rysunek 114: Ustawienia przezroczystości

62 Materiał Polistyren Szafir Diament Silikon 1.55 – 1.59 1.77 2.417 4.01 IOR

Fresnel – pozwala na ustalenie, pod jakim kątem muszą padać promienie światła, by zostały przepuszczone przez obiekt. Łatwo sobie wyobrazić, na czym to polega, analizując przykład grubej szklanej szyby. Jeśli patrzymy przez nią prostopadle, jest prawie całkowicie przezroczysta. Jednak, gdy popatrzymy wzdłuż niej, okazuje się, że jest nieprzejrzysta (wtedy możemy też zobaczyć, jaki szkło ma kolor).

Rysunek 115: Parametr alpha, od lewej: 1.0; 0.8; 0.5; 0.3; 0.1

63

Rysunek 116: Alpha = 0.3; IOR, od lewej: 1.0; 1.01; 1.02; 1.05; 1.1

Rysunek 117: Alpha = 0.6; Fresnel, od lewej: 0.0; 1.0; 2.0; 3.0; 4.0
Parametry oświetlenia materiału decydują, w jaki sposób będzie od materiału odbijane światło lamp. Spec – decyduje o tym, jak dużo światła jest odbijane. Hard – decyduje o tym, ile światła zostanie rozproszone. Shadow – decyduje o tym, czy na materiał mają być rzucane cienie. TraShad – decyduje o tym, czy cienie rzucane na obiekt mają otrzymywać parametr alpha od obiektów, przez które zostały rzucone (patrz rysunek).

Rysunek 118: Okno narzędziowe Shaders

64

Rysunek 119: Parametr Spec, od lewej: 0.0; 0.4; 0.6; 1.0; 2.0

Rysunek 120: Spec: 0.5; Hard, od lewej: 10; 40; 80; 200; 400

Rysunek 121: Materiał podłogi z włączonym parametrem TraShad

65
Rozdział 12. Tekstury Jak już wcześniej powiedziano, tekstury pozwalają nieliniowo (za pomocą mapy bitowej) zmienić pewien parametr materiału. Ponieważ stwierdzenie to – jakkolwiek precyzyjne i trafne – nie jest dostatecznie opisowe, dlatego je dokładniej przeanalizujemy. Po pierwsze - zmiana parametru materiału oznacza, że możemy wpłynąć na zachowanie się materiału w niektórych miejscach. Dla przykładu, możemy spowodować, by część obiektu, na który nałożony jest materiał, była przezroczysta, a część – nie. Tekstury pozwalają na na wpływanie praktycznie wszystkie

poznane parametry materiału. Po drugie - nieliniowo, bo za pomocą mapy bitowej: siła działania tekstury w każdym z miejsc jest determinowana przez jej kolor. Jeśli, na przykład, użyjemy obrazka w odcieniach szarości do wskazania przezroczystości materiału w różnych miejscach, każde miejsce, które na teksturze jest czarne, będzie w pełni przezroczyste, zaś każde białe będzie całkowicie nieprzejrzyste (lite); kolory pośrednie będą wskazywały pośrednie wartości przezroczystości. Zobaczmy, jak działają tekstury na przykładzie. potem na Powiedzmy, naszej scenie. że chcemy wymodelować witraż, który znajdzie się Moglibyśmy ramkę i oczywiście wymodelować

Rysunek 122: Witraż, który chcemy uzyskać

Rysunek 123: Wyrenderowany witraż

wszystkie szkiełka, ale byłoby to dosyć niewygodne; poza tym tak wymodelowany witraż miałby z pewnością wiele wierzchołków, co radykalnie spowolniłoby renderowanie. Wystarczy jednak nałożyć teksturę na nasz materiał, by bardzo łatwo

Rysunek 124: Witraż z odpowiednimi teksturami

otrzymać spodziewany efekt – widać to na rysunku 123. Ktoś mógłby stwierdzić, że owszem, witraż

66
wygląda realistycznie, ale brakuje mu ważnego elementu – każde szkiełko powinno być półprzezroczyste. Okazuje się jednak, że i ten efekt można łatwo uzyskać za pomocą tekstury. Ba! Można nawet zmusić materiał, by rzucał kolorowy cień – jak na rysunku 124. Obiekt, na który nałożono witraż, jest odpowiednio przekształconym kwadratem i ma tylko 4 wierzchołki. Tekstury dzielimy na dwa rodzaje. Pierwszym, są tekstury obrazkowe. Tekstura taka stanowi po prostu pewien obrazek (np. zdjęcie zapisane w formacie jpeg), który wczytujemy w Blenderze z dysku. Drugim rodzajem są tekstury proceduralne. Od obrazkowych różnią się tym, że są – na bazie pewnych parametrów Blendera. – generowane przez tekstury Przykładem

Rysunek 125: Tekstura zwykła, obrazkowa

proceduralnej jest szum lub chmury (rysunek 126). Tekstury proceduralne przeważnie zawierają szereg opcji, które pozwalają w pewnym zakresie na zmianę wyglądu generowanego obrazu. Tekstury proceduralne mają też pewien podtyp – tekstury Blendera w pluginach (możliwości poprzez można rozszerzać

Rysunek 126: Tekstura proceduralna - chmury

pisanie własnych procedur generujących

Rysunek 127: Woda, tekstura - plugin

tekstury). Przykładowo, w internecie można znaleźć teksturę proceduralną generującą animowane kręgi, które z kolei pozwalają zasymulować np. kałużę w deszczu (rysunek 127). Rozdział 12.1. Dodawanie i modyfikacja tekstur Przyjrzyjmy się zatem, w jaki sposób dodawać tekstury do materiału. Utwórzmy nowy materiał. Wśród okienek narzędziowych pozwalających na modyfikację materiału znajduje się okienko oznaczone Texture (rys. 128). Znajdują się tam trzy ważne elementy. Pierwszy, to znajdujący się z lewej strony okienka stos czy inaczej lista tekstur. Jest ona wyświetlona w postaci dziesięciu

Rysunek 128: Okienko narzędziowe Texture

67
pustych na razie przycisków, w których będą znajdować się informacje o utworzonych teksturach. Tekstury są „składane” z góry w dół – oznacza to, że podczas procesu przetwarzania materiału, analizowana jest najpierw tekstura znajdująca się na samej górze listy, następnie druga w kolejności i tak dalej. Warto zapamiętać, że jeśli tekstury wpływają na różne parametry materiału (na przykład, jedna na kolor, a inna na przezroczystość), ich kolejność nie będzie miała żadnego znaczenia. Drugi element to dwa niepozorne przyciski znajdujące się u góry okienka. Odpowiadają one za używanie „schowka tekstur” - pierwszy przycisk zapamiętuje wybraną teksturę, a drugi – wkleja wcześniej zapamiętaną teksturę w nowe miejsce. Narzędzi tych używa się przeważnie do klonowania tekstur. Trzecim elementem jest przycisk Add New i, znajdujący się poniżej, przycisk rozwijanej listy. Przycisk pozwala na utworzenie nowej tekstury, zaś lista pozwala na wstawienie w zaznaczone miejsce już istniejącej tekstury. Należy pamiętać, że jeśli jakaś tekstura jest używana w kilku miejscach, to zmiana jej parametrów w jednym miejscu zaowocuje zmianą tych parametrów wszędzie, gdzie jest używana. Jeśli nie chcemy, by taka sytuacja zachodziła, możemy używać wspomnianego „schowka tekstur” - tekstury są wtedy klonowane i nie wpływają na siebie nawzajem. Okienko Texture, poza wspomnianymi narzędziami, nie pozwala na wiele więcej: możemy jeszcze, po utworzeniu tekstury, zmienić jej nazwę lub usunąć powiązanie z zaznaczonym slotem. Tekstury, jeśli chodzi o usuwanie, zachowują się w taki sam sposób, jak materiały: nie jest możliwe usunięcie tekstury ze sceny – co najwyżej można zerwać powiązanie tekstury ze slotem w materiale. Jednak wszystkie tekstury, które nie mają swoich użytkowników (czyli które nie są przypisane do któregoś materiału), nie są zapisywane podczas zapisywania całego projektu – chyba, że tego explicite zażądamy. Aby zmodyfikować teksturę, musimy wybrać odpowiedni materiał, a następnie przejść do zakładki modyfikacji tekstur (rysunek 129).

Rysunek 129: Zakładka modyfikacji tekstur
W zakładce modyfikacji tekstur znajdują się trzy okienka – Preview, Texture oraz Colors. Okienko Preview pozwala na obejrzenie aktualnie modyfikowanej tekstury. Wszelkie zmiany, które będziemy wprowadzać do materiału i tekstur, będą natychmiast w nim

68
uwidocznione. Okienko Colors (rys. 130) daje możliwość wyboru koloru lub kolorów, za pomocą których będzie budowana tekstura proceduralna. Możemy podać wartość RGB koloru bądź (po wciśnięciu przycisku Colorban – od colorband) zaprojektować gradient kolorów, z których będzie korzystała tekstura proceduralna. Jako przykład może służyć rysunek 131 - została tam zaprojektowana tekstura proceduralna chmur, a jej kolory zostały podane w postaci gradientu na zakładce Colors. Używanie okienka

Rysunek 130: Okienko Colors

Colors jest stosunkowo łatwe i poznanie go pozostawiam je jako ćwiczenie dla czytelnika.

Rysunek 131: Tekstura chmur wygenerowana na bazie gradientu

Rozdział 12.2. Wpływ tekstur na materiał Jak wcześniej wspomniano, tekstura pozwala na modyfikację parametrów materiału. Okazuje się, że za pomocą tekstury możemy wpłynąć nawet na takie parametry, których nie jesteśmy w stanie zmienić za pomocą okienka modyfikacji materiału. Domyślnym sposobem wpływu tekstury na materiał jest zmiana jego koloru. Najłatwiej możemy to sobie wyobrazić jako – dla przykładu – przyklejenie naklejki na jakąś powierzchnię. Różnica jest tylko taka, że naklejka ta ma rozmiary powierzchni, na którą jest naklejana – i pokrywa ją w całości. Możemy jednak zmienić parametr, który jest modyfikowany przez teksturę. Do tego celu służy okienko MapTo. Zwróćmy najpierw uwagę na szereg przycisków znajdujących się u góry okienka. Pozwalają one na wybór, który parametr (parametry) materiału mają być zmieniane za pomocą tekstury. Domyślnie – jak wspomniano – jest włączona opcja Col, która odpowiada za modyfikację koloru materiału.

Rysunek 132: Okienko MapTo

Zajmiemy się tylko kilkoma parametrami: Col, Nor oraz Stencil. Zachęcam jednak, aby czytelnik zapoznał się z innymi parametrami – dzięki ich znajomości możemy zaprojektować realistycznie wyglądający materiał. Sposób działania parametru Col jest oczywisty – dlatego też na

69
początku zajmiemy się parametrem Nor. Jest on jednym z ciekawszych parametrów – nieosiągalnym ze zwykłego okna modyfikacji materiału. Pozwala on na modyfikację – podczas renderowania – normalnych obiektu, czyli daje możliwość – tak jakby – modelowania obiektu z poziomu tekstury. przykładzie, na czym to polega. Na rysunku 133 zobaczyć możemy elementy interface'u systemu Microsoft Windows. Możemy łatwo zauważyć, że wydają się one trójwymiarowe: z racji umiejętnego zastosowania światłocienia, przycisk wydaje się być wypukły, pole edycji – wklęsłe, zaś panel otoczony – wklęsłą ramką. Zauważmy zatem, że, mimo iż ekran komputera jest płaski, udało się uzyskać na nim efekt trójwymiarowości. Tak samo możemy postąpić z materiałem, używając tekstury modyfikującej parametr Nor. Pierwszym krokiem będzie przygotowanie obrazka, który – za pomocą natężenia koloru – będzie obrazował „fikcyjną” wysokość w danym miejscu. Przykładem takiego obrazka może być rysunek 134. Następnie musimy utworzyć teksturę, której przypiszemy ten obrazek – tak, jak na rysunku 135, by wreszcie ustawić Nor jako modyfikowany parametr (rysunek 137). Po nałożeniu tak przygotowanego materiału na sześcian i wyrenderowaniu, otrzymamy efekt widoczny na rysunku 136. Na oba sześciany nałożony jest ten sam materiał z teksturą Nor – lewy sześcian wygląda, jakby miał na środku wklęsłość o kształcie piramidy, dopiero drugi sześcian, którego górna krawędź jest widoczna pod bardzo ostrym kątem pokazuje, że jest to tylko Zobaczmy na

Rysunek 133: Elementy interface'u systemu Windows

Rysunek 134: Rysunek z mapą wysokości

Rysunek 135: Rysunek wczytany jako tekstura

Rysunek 137: Zmiana parametrów tekstury

Rysunek 136: Wyrenderowany obraz

70
złudzenie. Można by zatem zadać pytanie: po co korzystać z tekstury modyfikującej parametr Nor, skoro taki sam efekt można uzyskać za pomocą modelowania? Oczywiście, w powyższym przypadku zastosowanie tekstury jest niepotrzebne, wymodelowanie odpowiedniego kształtu zajęłoby zapewne mniej czasu niż przygotowanie i użycie tekstury. Jeśli jednak przyjdzie do modelowania, na przykład, okrywającego stary budynek chropowatego tynku odsłaniającego miejscami cegły, „chropowatego” piasku na plaży, wytłoczonego w metalu skomplikowanego zdobienia itp., okaże się, że zastosowanie odpowiedniej tekstury pozwoli otrzymać końcowy efekt bez użycia – spowalniających proces renderowania – dodatkowych wierzchołków. Warto również zauważyć, że próba wymodelowania sypkiego piasku na plaży w realnym czasie – i bez użycia tekstury Nor – graniczyłaby z cudem. Tekstury Nor są nazywane czasem Bump-mapami (ang. mapa wypukłości). Warto pamiętać również o tym, że używanie tekstur typu Nor jest swego rodzaju „oszustwem”, które może być bardzo łatwo zdemaskowane poprzez zmianę kąta patrzenia lub zbytnie zbliżenie kamery do obiektu. Czasami zdarza się sytuacja, że zachodzi potrzeba nałożenia na bryłę kilka tekstur. Jest to oczywiście możliwe (możemy nadawać różne materiały różnym ścianom bryły), ale czasami okazuje się, że jeden materiał musi płynnie przejść w drugi – lub granice materiałów są o tak nieregularnych kształtach, że zmiana geometrii bryły jest zbyt problematyczna. Z pomocą przychodzą nam wtedy tekstury typu Stencil. Wyobraźmy sobie, że chcemy wymodelować wybrzeże morza z teksturą

Rysunek 138: Schemat układu tekstur: 1 - piasek; 2 mapa przezroczystości (stencil); 3 - trawa

płynnie przechodzącą z piasku w trawę. W tym celu będziemy musieli przygotować trzy tekstury:
● ● ●

teksturę zawierającą obrazek piasku; teksturę zawierającą obrazek trawy; teksturę pośrednią, która będzie zawierała mapę przezroczystości.

Gotowe tekstury widać na rysunku 138. W taki sposób przygotowane tekstury muszą zostać jeszcze odpowiednio spreparowane, by zadziałały w odpowiedni sposób. Po pierwsze - trzeba je ułożyć w odpowiedniej kolejności. Jak

71
pamiętamy, Blender „składa” tekstury w dół, czyli najpierw przetwarza teksturę, która znajduje się na stosie tekstur najwyżej, następnie nakłada na nią przekształcenia opisywane przez teksturę drugą w kolejności – i tak dalej. Łatwo więc się domyśleć, że tekstura maski przezroczystości powinna zostać umieszczona pomiędzy teksturami piasku oraz trawy. Pozostało nam zatem jeszcze odpowiednie skonfigurowanie tekstury mapy przezroczystości, by zaczęła odpowiednio działać. W tym celu przechodzimy do zakładki MapTo, a następnie wyłączamy opcję Col, wreszcie włączamy opcję Sten. Jeśli nie otrzymamy spodziewanego rezultatu, możemy włączyć opcję No RG, która powoduje, że niezależnie od kolorystyki, tekstura mapy przezroczystości będzie traktowana jak tekstura w odcieniach szarości. Obejrzyjmy końcowy efekt:

Rysunek 139: Ustawienia tekstury Stencil (zakładka MapTo)

Rysunek 140: Działanie tekstury typu Stencil

72
Rozdział 13. Podsumowanie Modelowanie trójwymiarowe – kiedyś dostępne tylko dla wąskiego grona projektantów, architektów i animatorów, głównie z racji wysokich cen odpowiednich programów – dziś, dzięki polityce oprogramowania OpenSource, jest dostępne dla każdego użytkownika komputera. Przy pomocy niewielkich środków możemy zmienić komputer w potężne narzędzie, dające możliwość zaprojektowania, obejrzenia lub zanimowania (a potem złożenia sekwencji scen i podłożenia dźwięku) trójwymiarowego świata. Technika ta wypiera nawet wcześniejsze metody animacji – wystarczy przeanalizować rynek filmów animowanych, gdzie niegdysiejsze „kreskówki” zostały już prawie w całości wyparte przez komputerowe animacje. Jednak wciąż – mimo wielu ułatwień, które oferuje nam komputer – kluczowym elementem, bez którego nie byłoby możliwe tworzenie grafiki trójwymiarowej, pozostaje ludzka kreatywność i fantazja wsparta wyobraźnią przestrzenną i odrobiną matematyki. Modelowanie grafiki trójwymiarowej nie jest też, jak mogłoby się wydawać, dziedziną zamkniętą i hermetyczną. Okazuje się bowiem, że do realistycznego wymodelowania świata niezbędna jest odpowiednia wiedza, której mogą dostarczyć inne dziedziny nauki – dla przykładu wymodelowanie dowolnej istoty żywej wymaga – czasami bardzo dogłębnej – znajomości jej anatomii: szkieletu, układu mięśni, sposobu działania stawów. Z kolei realistyczna animacja płynów wymaga znacznej znajomości praw fizyki opisujących ich zachowanie. Mam nadzieję, że niniejszy skrypt przybliżył czytelnikowi techniczne podstawy modelowania grafiki w Blenderze. Nie wystarczy on jednak do nauki modelowania i renderingu fotorealistycznych scen – aby się tego nauczyć, niezbędne jest doświadczenie, które możemy zdobyć jedynie, spędzając niezliczone godziny przed ekranem komputera, „walcząc” z wierzchołkami, krawędziami, materiałami i teksturami. Do tego zaś niezbędne jest włożenie w tę pracę wiele chęci i zapału, którego czytelnikowi życzy -- Autor.

73
Rozdział 14. Podziękowania. Dziękuję dr. Krzysztofowi Tabiszowi za patronat nad całym przedsięwzięciem oraz za wszelkie uwagi i wskazówki dotyczące tematyki wykładu. Korektę niniejszego skryptu wykonała mgr Elżbieta Sura, której również składam podziękowania. Analizę pod kątem merytorycznym wykonali członkowie polskiej grupy użytkowników Blendera – Blenderowni Podziękowania (www.blender.pl), którym jestem wdzięczny za ich bezinteresowną pracę. prace na potrzeby tego skryptu. Podczas pracy nad skryptem używałem następującego oprogramowania:

składam również wszystkim osobom i instytucjom, które zgodziły się udostępnić swoje

ACDSee 5.0 http://www.acdsee.com/ Blender 2.42 http://www.blender.org Gimp 2.2 http://www.gimp.org MW Snap http://www.mirekw.com/winfreeware/mwsnap.html OpenOffice.org 2.1 Writer ux.pl http://www.openoffice.org, http://www.ux.pl
Dziękuję jego Autorom.

74
Dodatek A: Zestaw skrótów klawiaturowych Blendera Blender shortcut list in courtesy of Joeri Oscar Paul Kassenaar Legend:
Works in 3d Window Ipo Window Sequence Window Renderd Image Window Works if Object selected Mesh verteces selected Ipo keys selected Sequence strip selected Button window exists. Global for F4-F10. Pop's up Use Shortcut list 0 0-9 Shift 0-9 TAB Ctrl TAB TAB A A Shift A Ctrl A Alt A Shift Ctrl A Shift Alt A B B BB Shift B C C Shift C Ctrl C Alt C C C Swap layers Add to layer setting Enter | exit vertex- edge- face- edit mode Enter | exit pose mode Enter | exit curve edit mode Select | deselect All Add menu Apply scale and rotation Play Animation Apply Latice | Duplicate Play Anim in current and all 3d windows Border select | deselect Circle Border select | deselect define render Border Center window around 3d cursor Cursor on origin Copy menu Convert menu (if possible) Snap current frame to selected key Change images a menu a file request. left mouse button right mouse button a toolbox Data selected Curve handles selected Ipo handles selected Render window exists. Object Mode Edit Mode Object and Edit Mode

75
D D Shift D Ctrl D Alt D E F E F F F Alt F Shift F Shift F Ctrl F G G Shift G Shift G Ctrl G Alt G H H H Shift H Shift H Ctrl H I J I J Ctrl J Ctrl J Ctrl J K K K Ctrl K Shift K L L L Shift L Ctrl L Ctrl L Alt L M M M Duplicate Duplicate Display alpha of image as wire Add data-linked Duplicate Extrude Enter | exit face select mode Make edge / face | Connect curve Set Filter Y Beauty reFill Sort Faces Make face(s) with triangles Flip edge Grab (move) Clear Location blender 2.25 ) Group Menu Add selected to group Remove selected from group Handle type: align \ free (toggle) Hide selected verteces Handle type: auto. see also V. Hide deselected verteces Automatic Handle calculation Insert Keyframe menu Swap render page of render window Join selected objects. also see P. NURBS:Insert segment Join selected keys Draw | hide object Keys. (toggle) Show Keys | show curves (toggle) Add skeleton to an IKA Clear vertexpaint colors Make Local menu. see also U. Select verteces linked to cursor select Linked menu make Link menu select verteces linked to selected vertex make Local menu Move to layer(s) Make a Meta strip

76
N N Ctrl N Ctrl N Shift Ctrl N O O Shift O Ctrl O Alt O P P P Ctrl P Ctrl P Alt P Shift Ctrl P Q R Q R R Shift R Alt R RX RXX RY RYY RZ RZZ S S Shift S Ctrl S Alt S SX SY T T Ctrl T Ctrl T Alt T Alt Ctrl T U U U U Number buttons recalculate bone roll angles recalculate Normals outside recalculate Normals inside Enter | exit proportional vertex editing (toggle) smooth | steep falloff in proportional editing reOpen file clear Origin start game engine (blender 2.25 ) separate verteces into objects.also see J. make Parent make vertex Parent clear Parent menu make Parent without inverse Quit Blender Rotate Record mouse movement as IPO curve select Row of nurbs Clear Rotation Rotate around X axis Rotate around object's local X axis Rotate around Y axis Rotate around object's local Y axis Rotate around Z axis Rotate around object's local Z axis Size Snap-to menu Shear Shrink Fatten Mirror X Mirror Y Tilt of 3d curve Convert to Triangles Make Track-to Clear Track-to Blenchmark. ( benchmark in console ) Single User menu Reload data buffer. (yep FaceSelect mode: UV menu

77
Ctrl U V V V Shift V Alt V W W W Shift W Ctrl W Alt W X Y Z X Ctrl X Y Z Z Shift Z Ctrl Z Ctrl Shift Ctrl Shift Ctrl / * 0 Ctrl 0 Alt 0 137 Shift 137 2468 Shift 2468 5 9 F F1 Shift F1 F2 Local view Rotate view to object Cameraview Make view Restore last camera to view Top front right view Down back left view Rotate view Translate view Perspective \ ortho Redraw Load a file Append | Link a file Save a files Save current file as user default file Vertexpaint on \ off Vector handle. see also H. Fit view to selected verteces Object resize to materials-texture aspect Special edit menu Boolean Warp selected verteces around cursor Write file Write selected as videoscape format erase menu Delete all Split selected from the rest Wire \ Solid toggle Zoom Wire \ Shaded toggle Shaded calculation Place cursor \ gesture \ vertex paint Add vertex Trackball Translate view Zoom view Select Add to selection

78
Shift F2 F3 Shift F3 F4 Shift F4 F5 Shift F5 F6 Shift F6 F7 Shift F7 F8 Shift F8 F9 Shift F9 F10 Shift F10 F11 Shift F11 F12 Shift F12 Lamp buttons Data select window Material buttons 3d view window Texture buttons Ipo window Animation buttons Button window World buttons Sequence window Edit buttons Object orient window Render buttons Images window Image window Text edit window Render an image Image Select window Save file as dxf Save an image

79
Dodatek B: Linki związane z Blenderem i modelowaniem grafiki 3D

Blender
www.blender.org www.blender.pl

Oficjalna strona domowa Blendera. Blenderownia; strona polskiej społeczności użytkowników Blendera. Blender Wiki – zestaw materiałów dotyczących Blendera. Wiki-książka Noob to Pro – zestaw wielu tutoriali tłumaczących podstawy Blendera. Blenderart – wydawany co pewien czas magazyn (w postaci pliku .pdf) poświęcony różnym aspektom modelowania i animacji w Blenderze Modelowanie i animowanie postaci Dobry tutorial modelowania postaci (3ds max). Duży wiki-tutorial o modelowaniu i animowaniu postaci w Blenderze. Tekstury i materiały Serwis z teksturami – większość doskonałej jakości i w dużych rozdzielczościach. Zestaw materiałów dla Blendera. Listing różnych tutoriali do Blendera Tutoriale

http://mediawiki.blender.org/index.php/Main_Page.pl

http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro

http://blenderart.org/index.html

http://mr2k.3dvf.net/tutorials/max/tutorials_joan.htm http://mediawiki.blender.org/index.php/BSoD/Introductio n_to_Character_Animation

www.imageafter.com http://www.geocities.com/pollythesheep/matlib_index.html

http://blenderartists.org/cms/index.php?id=31

80
Dodatek C: Tutoriale Skrypt ten opisuje jedynie podstawy modelowania grafiki w Blenderze. Blender zawiera jednak o wiele więcej funkcji, które pozwalają na otrzymanie wielu ciekawych efektów. Choć nie zostały one przeze mnie opisane i wytłumaczone, myślę, że warto je poznać. W tym celu przedstawię kilka tutoriali (instrukcji krok-po-kroku), które pokażą, w jaki sposób otrzymać kilka efektów, lecz nie będą podawały bliższych szczegółów. Przeanalizowanie ich oraz głębsze poznanie opisanych technik pozostawiam Czytelnikowi. Dodatek C.1: Tutorial używania SoftBody SoftBody jest to technika pozwalająca na zmodyfikowanie brył w taki sposób, by zachowywały się jak materiał. Za pomocą poznanych technik przygotujmy następującą scenę (rys. 141). U góry znajduje się obiekt Siatki (Grid), zaś poniżej – sześcian (Box). Tworzymy nową grupę wierzchołków, ustawiamy jej wagę 0, a następnie dodajemy wszystkie zaznaczone wierzchołki do tej grupy (rys. 143). Warto również nadać tej grupie własną nazwę (np. SoftBodyGroup, służy do tego pole znajdujące się zaraz poniżej napisu Vertex Groups). Wychodzimy z trybu edycji, a następnie przechodzimy do trybu malowania wagi (rysunek 142).

Rysunek 141: Przygotowana scena

Rysunek 143: Dodawanie grupy wierzchołków Rysunek 142: Tryb malowania wagi

Rysunek 144: Ustawienia trybu malowania wagi

Następnie ustawiamy narzędzie malowania w sposób pokazany na rysunku 144 i malujemy cztery boczne wierzchołki siatki tak, jak na rysunku 145 (jeśli mamy ustawione zaznaczanie lewym przyciskiem myszy, malujemy prawym). Wracamy do trybu edycji, a następnie odnajdujemy zakładkę dynamizmu obiektów (jest ona w miejscu, w którym możemy dodać do obiektu cząsteczki). W odpowiedniej zakładce włączamy opcję Soft Body, by ujawnić dodatkowe pola (rysunek 146).

81

Rysunek 146: Włączenie trybu Soft Body. Rysunek 145: Wierzchołki zamalowane przy użyciu malowania wagi
Ustawiamy tam dwie opcje:

zwiększamy grawitację (pole Grav), ustawiając średnią grawitację ziemską (około odnajdujemy przycisk Use Goal. Obok niego znajduje się niewielki przycisk

9.81),

otwierający listę, na której znajdują się grupy wierzchołków. Wybieramy tam utworzoną przez nas grupę. Wciskamy Alt+A, aby obejrzeć otrzymany efekt. Animację przerywamy za pomocą klawisza Esc. Dodajmy teraz przeszkodę. Zaznaczamy sześcian, a następnie, znów w zakładce dynamizmu obiektów, włączamy opcję Deflection. Parametr Damping ustawiamy na 1.0. Wciskamy Alt+A, aby zaobserwować efekt. Animacja wygląda marnie, bo nasz „materiał” ma zbyt mało

Rysunek 147: Dodawanie deflekcji do obiektu

wierzchołków. Zaznaczamy go, a następnie, po zaznaczeniu wszystkich wierzchołków w trybie edycji, wykonujemy na nim dwu- lub trzykrotnie polecenie Subdivide (dostępne z menu specjalnego dostępnego pod klawiszem W). Wciśnijmy Alt+A, aby zobaczyć efekt końcowy. Warto zapamiętać, że liczba wierzchołków przeszkody również wpływa na realizm wykonanej symulacji.

Rysunek 148: Symulacja materiału

82
Dodatek C.2: Symulacja płynów (FluidSim) Animacja płynów, z uwagi na trudne obliczenia fizyczne, jest jednym z najtrudniejszych aspektów modelowania grafiki trójwymiarowej. Jednak Blender udostępnia odpowiednie narzędzie, które pozwala na całkiem realistyczną ich symulację. Wstawiamy na scenę sześcian oraz IcoKulę – jak na rysunku 149. Następnie zaznaczamy sześcian i przechodzimy do okienka dynamizmu. Przechodzimy na zakładkę Fluid Simulati, tam włączamy symulację płynów (Enable), ustalamy, że sześcian będzie domeną (Domain) – jest to obszar ograniczający wszystkie płyny użyte w symulacji. Żaden płyn nigdy nie wydostanie się za domenę i jest nią zawsze graniastosłup (nawet jeśli wybierzemy inną bryłę, za domenę zostanie wzięty graniastosłup ograniczający tą bryłę, tzw. bounding box). Ponadto ustawiamy większą jakość podglądu (Preview-Res.) - warto zapamiętać, że im wyższa jakość animacji tym więcej pamięci będzie potrzebne na przygotowanie symulacji – przy dokładności 50 wartość ta sięga 14 MB, przy 100 – 109 MB, przy 128 – 228 MB. Ograniczeniem jest pamięć naszego komputera, szybkość jego procesora oraz czas – przygotowywanie symulacji (tzw. baking) jest bardzo

Rysunek 149: Sześcian i IcoKula

Rysunek 150: Ustawienia sześcianu

czasochłonnym procesem. Ostatnią opcją, którą należy ustawić jest katalog do którego Blender zapisze wszystkie informacje potrzebne do obejrzenia i późniejszego wyrenderowania animacji. Należy mieć na względzie, że pliki te mogą zająć bardzo dużo miejsca – 250 klatek przygotowanej przez nas symulacji zajęło 136 MB. Drugą czynnością będzie wybranie IcoKuli, przejście do zakładki dynamizmu, włączenie symulacji płynów, a następnie ustawienie typu kuli na Fluid. Wreszcie, wracamy do sześcianu i w zakładce Fluid Simulati klikamy przycisk Bake. Nastąpi teraz długi proces przygotowywania zadanej symulacji – możemy

Rysunek 151: Podgląd częściowo wykonanej symulacji w trakcie przygotowywania (Bake)

83
spokojnie udać się na przysłowiową kawę czy herbatę. Blender będzie pokazywał w oknie podglądu postęp operacji. Po zakończeniu procesu możemy obejrzeć gotową symulację, korzystając ze skrótu klawiaturowego Alt+A. Tak przygotowana, animowana bryła może być modyfikowana za pomocą różnych metod (na przykład można na nią nakładać modyfikatory takie, jak Subsurf), można na nią nałożyć materiał z teksturami itp. Symulację można poszerzać o elementy, które generują płyn (wpływ, Inflow), pochłaniają (wypływ, Outflow) oraz są przeszkodami na drodze płynu (Obstacle). Warto pamiętać, by przeszkody miały gęstą siatkę – podniesie to realizm symulacji.

Rysunek 152: Jedna z klatek przygotowanej animacji

84
Dodatek D: Galeria Oto kilka prac wykonanych w Blenderze przez grafików z całego świata:

Rysunek 153: Ladybird Autor: Lucas Veber

Rysunek 154: April – May Autor: Chun Huang

85

Rysunek 155: Old House Autor: Szabó László

86

Rysunek 156: The Chair Autor: Enrico Cerica

87

88

Rysunek 157: Crashed ship Autor: Jesse Nelson

89

Rysunek 158: Tree Spirit Autor: Jonathan Williamson

Sign up to vote on this title
UsefulNot useful