r05-5_popr.doc

(981 KB) Pobierz
StyleHeliona

Rozdział 5. Transformacje

Transformacje to najbardziej podstawowe polecenia wykorzystywane podczas animowania obiektów. Sprawiają one, że obiekty mogą podskakiwać, kurczyć się, wirować lub latać. Na poziomie struktury obiektu transformacje wykorzystywane są do edytowania modeli. W niniejszym rozdziale, oprócz transformacji podstawowych, omówione zostaną transformacje zaawansowane, służące do tworzenia szyków powielonych obiektów.

Transformacje to zbiór funkcji matematycznych określanych fachowo mianem transformacji afinicznych. Funkcje te wpływają na zmianę współrzędnych obiektów geometrycznych w taki sposób, że równoległe boki obiektów przez cały muszą zachowywać swoją równoległość.

Podstawowe polecenia transformacji to:

¨       translacja — przemieszczenie wzdłuż linii prostej,

¨       obrót — obrócenie względem środka obrotu,

¨       skalowanie — powiększenie lub pomniejszenie,

¨       odbicie — utworzenie odbicia lustrzanego.

Rysunek 5.1 przedstawia wszystkie z wyżej wymienionych typów transformacji.

Translacja, obrót oraz skalowanie określane są w grafice 3D mianem transformacji. W 3ds max nazywa się je odpowiednio: transformacja przemieszczania, transformacja obracania oraz transformacja skalowania.

W niniejszym rozdziale, aby lepiej zobrazować rezultaty transformacji, na niektórych rysunkach będą przedstawione dwa wizerunki tego samego obiektu. Wizerunek transparentny będzie pokazywać obiekt przed zastosowaniem transformacji, natomiast wizerunek normalny będzie przedstawiać wynik transformacji.

Rysunek 5.1. Na rysunku od góry do dołu: translacja wzdłuż linii ukośnej, obrót względem końcówki dzióbka dzbanka, skalowanie pomniejszające, odbicie lustrzane na prawą stronę


Przepływ informacji o obiekcie

Chcąc opanować transformacje, a także inne polecenia, dobrze jest zdobyć wiedzę o ich działaniu od podszewki.

3ds max został napisany w obiektowo zorientowanym języku programowania, znanym pod nazwą C++. Oznacza to, że klasyfikacja poleceń na takie, które mogą być przypisane oraz takie, które nie mogą być przypisane do danego obiektu, uzależniona jest od definicji oraz bieżącego statusu obiektu.

W miarę jak do obiektu przypisywane są kolejne polecenia, informacja o obiekcie przekazywana jest z jednej procedury wywołanej danym poleceniem do następnej. Kolejność, w jakiej przetwarzane są te polecenia, określana jest za pomocą ciągu zwanego przepływem informacji o obiekcie (rysunek 5.2).

Przepływ informacji o obiekcie w 3ds max rozpoczyna się od obiektu bazowego. Obiekt bazowy to podstawowa definicja obiektu. Kiedy przystępujesz do utworzenia nowego modelu, program rozpoczyna procedurę od przypisania do obiektu podstawowego parametrów tworzenia, położenia, orientacji i skali.

Następnie zostają przypisane polecenia modyfikatorów. Zazwyczaj modyfikatory deformują strukturę obiektów.

Po modyfikatorach zawsze przypisywane są transformacje. Zmieniają one położenie, orientację oraz skalę obiektu.

W dalszej kolejności, tj. po modyfikatorach i transformacjach, przypisywane są pola sił. Sprawiają one, że obiekty ulegają deformacjom, jak gdyby oddziaływały na nie określone siły zewnętrzne.

Rysunek 5.2. Przepływ informacji o obiekcie. Od góry do dołu: zdefiniowanie obiektu bazowego poprzez utworzenie sześcianu, przypisanie do obiektu bazowego modyfikatora Twist, przypisanie transformacji skalowania, przypisanie pola sił FFD, przypisanie właściwości materiału


Na końcu przypisywane są właściwości obiektu. Na właściwości obiektu składają się: nazwa, kolor, przypisany materiał, właściwości wyświetlania, właściwości renderowania z uwzględnieniem zdolności rzucania i przyjmowania cienia.

W związku z powyższym należy podkreślić, że kolejność przetwarzania poleceń może różnić się od kolejności ich przypisywania do obiektu. Jeżeli na przykład najpierw przeskalujesz obiekt, a następnie przypiszesz mu modyfikator Bend, transformacja skalowania zostanie przetworzona po modyfikatorze. Może to dać zupełnie inny rezultat niż w przypadku, gdyby najpierw nastąpiło przetworzenie skalowania. Dotyczy to szczególnie skalowania nierównomiernego, jak na przykład zagniatanie lub skalowanie nieproporcjonalne (rysunek 5.3). Aby uniknąć tej niedogodności, doświadczeni animatorzy skalują obiekty posiłkując się modyfikatorem XForm (który pozwala umieścić transformacje na liście modyfikatorów) lub zmieniają parametry rozmiarów wyjściowych (więcej informacji na temat modyfikatora XForm znajdziesz w rozdziale siódmym.)

Rysunek 5.3. Kolejność przetwarzania może wpływać na efekt końcowy. Na górze: przetworzenie zgniatania przed zginaniem. Na dole przetworzenie zginania przed zgniataniem


Systemy odniesień

Systemy odniesień rejestrują położenie, orientację oraz skalę obiektów w chwili ich transformowania. W rozdziale trzecim miałeś okazję poznać dwa systemy odniesień: lokalny, który opisuje przestrzeń obiektu w zmiennym, lokalnym układzie współrzędnych (rysunek 5.4), oraz globalny, który opisuje przestrzeń globalną w stałym, globalnym układzie współrzędnych (rysunek 5.5).

Trzeci system odniesień skojarzony jest z miejscem patrzenia na scenę i wyznacza go płaszczyzna monitora. Ponieważ punktem odniesienia tego systemu jest obserwator, jest bardzo łatwy do zrozumienia: góra i dół osi Y to po prostu góra i dół ekranu, a lewy i prawy koniec osi X to lewa i prawa strona ekranu (rysunek 5.6).

Aby umożliwić ci poruszanie się w systemie odniesień dostosowanym do każdego rodzaju pracy, 3ds max posługuje się kombinacją lokalnych, globalnych oraz ekranowych układów współrzędnych. Domyślnym systemem odniesień jest View. System ten wykorzystuje w płaskich widokach ortogonalnych ekranowy układ współrzędnych, a w trójwymiarowych widokach perspektywicznych z perspektywą równoległą lub zbieżną globalny układ współrzędnych. We wszystkich widokach osie X oraz Y oznaczone są czarną poziomą i pionową linią, natomiast oś Z przebiega prostopadle do dwóch poprzednich osi i jest niewidoczna dla obserwatora.

O wynikach zastosowania transformacji decyduje wybór systemu odniesień, środka transformacji oraz osi ograniczeń. Zdefiniowany wybór pozostaje skojarzony z transformacją do czasu określenia nowego wyboru.

Systemy odniesień wyznaczają początek oraz kierunek transformacji. Aby dowiedzieć się, jak poszczególne układy współrzędnych zorientowane są względem ekranu zobacz tabelę

... spójrz na tabelę ...

5.1. Orientacja układów współrzędnych.

Rysunek 5.4. Lokalny układ współrzędnych bazuje na przestrzeniu obiektu

Rysunek 5.5. Globalny układ współrzędnych bazuje na przestrzeni globalnej

Rysunek 5.6. Bez względu na to, z jakiego systemu odniesień korzystasz, osie X oraz Y spoczywają na siatce konstrukcyjnej


Aby wybrać układ współrzędnych:

1.       W głównym pasku narzędziowym rozwiń menu Reference Coordinate System (rysunek 5.8).

2.       Wybierz układ współrzędnych.

Układ współrzędnych zostanie skojarzony z bieżącymi transformacjami przemieszczania, obracania lub skalowania. Ikony układów współrzędnych aktywnych selekcji wyrównają się względem układu współrzędnych (rysunek 5.8).

Środki transformacji wyznaczają alternatywny punkt odniesienia dla transformacji obracania oraz skalowania. Nie mają one jednak żadnego wpływu na jakiekolwiek transformacje przemieszczania. W 3ds max wyróżnić można następujące środki transformacji:

¨       Use Pivot Point Center. Jest to punkt centralny wyselekcjonowanego obiektu. Ustawienie domyślne dla selekcji złożonej z pojedynczego obiektu.

¨       Use Selection Center. Jest to geometryczny środek selekcji. Ustawienie domyślne dla selekcji złożonej z wielu obiektów.

¨       Use Transform Coordinate Center. Jest to początek bieżącego układu współrzędnych, jaki wybrany został z menu rozwijanego Reference Coordinate System.

Rysunek 5.7. Menu rozwijalne Reference Coordinate System umożliwia wybór układu współrzędnych do transformowania obiektów

Rysunek 5.8. Osie wyselekcjonowanych obiektów wyrównane są względem bieżącego układu współrzędnych

Tabela 5.1. Orientacja układów współrzędnych

Screen

Osie X oraz Y są równolegle do ekranu monitora; oś Z jest prostopadła do ekranu.

World

Osie X, Y oraz Z są wyrównane do globalnego układu współrzędnych.

View

Połączenie układów Screen oraz World. Osie X oraz Y spoczywają na widocznej siatce konstrukcyjnej aktywnego okna widokowego; oś Z jest prostopadła do siatki.

Parent

Osie X, Y oraz Z są wyrównane do lokalnego układu współrzędnych obiektu, który pełni funkcję rodzica. Jeżeli dany obiekt nie jest przyłączony do rodzica, staje się on dzieckiem globalnego układu współrzędnych i wykorzystuje współrzędne globalnego układu współrzędnych.

Local

Osie X, Y oraz Z są wyrównane do lokalnego układu współrzędnych obiektu.

Grid

Osie X, Y oraz Z są wyrównane do układu współrzędnych aktywnej siatki konstrukcyjnej.

Pick

Osie X, Y oraz Z są wyrównane do lokalnego układu współrzędnych dowolnie wybranego obiektu znajdującego się w obrębie sceny.


Aby wybrać środek transformacji:

¨       Z menu ikonowego Use Center, znajdującego się w głównym pasku narzędziowym, wybierz środek transformacji (rysunek 5.9).

Środek transformacji zostanie skojarzony z bieżącą transformacją. Ikona układu współrzędnych oraz manipulator — znaczniki i uchwyty wskazujące kierunek transformacji — dostosują się odpowiednio, wskazując położenie i orientację wybranego środka transformacji.

Osie ograniczeń ograniczają kierunek transformacji do określonych osi.

Aby ograniczyć transformację:

1.       W głównym pasku narzędziowym kliknij ikonę symbolizującą transformację, którą chciałbyś ograniczyć .

2.       W głównym pasku narzędziowym kliknij jedną z ikon Restrict to (rysunek 5.10).

Transformacja zostanie ograniczona do dodatnich lub ujemnych wartości wybranej osi. Jeżeli wybierzesz ograniczenie do dwóch osi (XY, YZ, ZX), transformacja zostanie ograniczona do płaszczyzny wyznaczanej przez te osie.

Wskazówki

n       Osie ograniczeń są kojarzone z daną transformacją tak długo, aż nie zostanie wyznaczona nowa oś ograniczeń.

n       Osie ograniczeń mają przypisane następujące skróty klawiaturowe:

F5Restrict to X

F6Restrict to Y

F7Restrict to Z

F8 — przełącza pomiędzy Restrict to XY, YZ, ZX.

Rysunek 5.9

Podkreślenie tłumacza.

. Menu ikonowe Use Center umożliwia wybór środka transformacji obrotu oraz skalowania

Rysunek 5.10. Ikony Restrict to ograniczają kierunek transformacji do linii lub płaszczyzny

Rejestrowanie transformacji

3ds max rejestruje wszelkie transformacje w odniesieniu do lokalnego lub globalnego układu współrzędnych, odwołując się do tzw. macierzy transformacji. Ponieważ macierz ta jest nieustannie uaktualniana, program jest w stanie zachować jedynie ostateczny wynik przypisanych kolejno transformacji. Porównaj ten mechanizm z mechanizmem przypisywania modyfikatorów. Modyfikatory bowiem przechowywane są na specjalnej liście, którą można edytować w dowolnej chwili.


Transformacja przemieszczania zmienia położenie obiektu w scenie poprzez translację wzdłuż osi bieżącego układu współrzędnych.

Aby przemieścić obiekt:

1.       Z głównego paska narzędziowego wybierz narzędzie Select and Move .

2.       Wybierz oś ograniczeń .

Bieżące osie transformacji zmienią kolor na żółty, informując o kierunkach, w jakich obiekt może zostać przemieszczony (rysunek 5.11).

3.       Uchwyć i przemieść obiekt w kierunku wyznaczonym przez aktywne osie transformacji.

Obiekt podąży za manipulatorem (rysunek 5.12).

4.       Aby zmienić osie ograniczeń w locie, przemieść (przeciągając myszą) oś manipulatora. W przypadku osi wyznaczających płaszczyznę ograniczeń przemieść narożnik manipulatora (rysunek 5.13).

Wskazówki

n       Jeżeli masz trudności z uchwyceniem ...

Zgłoś jeśli naruszono regulamin