Interaktywna animacja VR (rzeczywistości wirtualnej) w standardzie VRML-2. Akademia Sztuk Pięknych w Łodzi Wydział Grafiki i Malarstwa Katedra Projektowania Graficznego Jakub Balicki IV 2004r. 1) Uruchom program Cinema4D. Na początek trzeba stworzyć "świat" w ktorym rozegra się animowana scenka. Dodaj do kompozycji objekt Plane (będzie naszym podłożem. 2) Musi być on stosunkowo duży (np: 4000 x 4000). Utwórz też nową teksturę.
3) W zakładce Color załaduj plik "piasek.tif". Wyłącz pozostałe zakładki. Nadaj tą teksturę objektowi Plane. 4) Przerób Plane na bryłę ściankową. Masz gotową ziemię, teraz musisz wykonać nieboskłon. Dodaj do kompozycji Sphere. Zmień ją na objekt ściankowy. Powiększ ją by miała średnicę trochę mniejsząniż długość boku Plane i umieść tak by ich środki były na jednakowej pozycji. Przejdź do pracy na ściankach.
5) Zaznacz ścianki tworzące dolną część kuli i skasuj je (zostaw jednak trochę więcej niż połowę, żeby nie tylko pozostałość objektu Sphera stykała się z ziemią, ale również miała lekki zapas). 6) W palecie Materials utwórz nowy materiał i wyłącz w nim wszystkie zakładki oprócz Luminance. W tej zakładce załaduj plik "chmury.tif". Dzięki temu, że niebo będzie składało się tylko z luminacji - nie będzie się ono rozjaśniało i zacieniało pod wpływem działania innych żródeł światła. 7) Dodaj do kompozycji źródło światła i umieść je pod kopułą nieboskłonu, trochę z boku.
8) W palecie Attributes, w zakładce General typ światła ustaw na Omni, a jasność (Brightness) na 70%. 9) Utwórz kilka dodatkowych materiałów, w tym conajmniej jeden z przezroczystością nadaną w zakładce transparency jedynie poprzez zmianę parametru Brightness na wartość wyraźnie różną od 0% lub 100%. Następnie zbuduj elementy animacji i nadaj im powyższe materiały. W moim przypadku jest to kanciaste drzewo, szklany domek i kubistyczna mieszanka konia z pisklęciem :-) która będzie elementem animowanym.
10) Pamiętaj aby wszystkie te bryły sprowadzić do postaci ściankowej (np: poprzez polecenie Structure -> Make Editable). Następnie poleceniem Edit -> Project Settings wywołaj okno w którym wyregulujesz prędkość odtwarzania Twojej animacji (ustaw Frame Rate na 15 klatek na sekundę), oraz czas jej trwania (określony w parametrze Maximum, ja dałem 90 klatek co razem daje 6 sekund czasu trwania animacji). Pamiętaj by najpierw wpisać wartość w okienku Frame Rate i potwierdzić (klawisz Enter lub Return na klawiaturze), a dopiero potem określić czas trwania klipu. 11) Teraz porozstawiaj swoje eksponaty w plan zdjęciowy - czyli np: wśród rzadko rozstawionych drzew ustaw domek, a w nim umieść bohatera animacji. Zrób to wszystko pracując w klatce nr 0. Dodatkowo możesz trochę "pooszukiwać" zmniejszając objekty skrajne (te bliżej linii "horyzontu" czyli miejsca styku Sphery z Planem), a powiększając te znajdujące się bliżej środka "świata".
12) Teraz przemieszczaj (obracaj, skaluj itp.) bohatera, na poszczególnych istotnych miejscach w czasie (moment w czasie wybieraj np: poruszając suwakiem z licznikiem klatek) i zapamiętuj te ustawienia dodając klucze (przyciskiem o ikonie czerwonego kółka) tak by stworzyć animację. Ponieważ animacja będzie zapętlona - pamiętaj jego by pozycja (wielkość, obrót,...) były w klatkach 0 i 90 jednakowe. 13) Teraz pracując w oknie z perspektywicznym widokiem kompozycji, wybierz kilka ciekawych ujęć dodając na nich kamery (poleceniem Object -> Scene -> Camera) - będą one "widziały" to co było w kadrze w momencie ich utworzenia.
14) Jedną (lub więcej) z kamer możesz również zanimować - jej ruch również będzie zapętlony - więc jej początkowa i skrajna pozycja powinna być jednakowa. 15) Dodaj jescze jedną kamerę i dopisz do jej nazwy FPP. Umieść ją troszkę przed "twarzą" animowanego bohatera tak by "widziała" świat widziany jego oczami. 16) Wrzuć kamere FPP do bohatera - teraz będzie ona powtarzać jego ruchy.
17) Twoja kompozycja jest już gotowa - czas utworzyć plik VRML (w standardzie 2 bo pliki wersji 1 nie przenoszą animacji). Na początku nagraj swój dokument jeżeli dotychczas tego nie uczyniłeś. Następnie w preferencjach programu (Edit -> Preferences) rozwiń zakładkę Import/Export a w niej wejdź w VRML 2 Export. 18) Koniecznie musisz mieć tam zaznaczoną opcję Save Animation (jeżeli nie będzie to wyeksportuje Ci się nieruchomy stan z aktualnie wybranej klatki). W opcji Keys/Second wpisz wartość 15 (bo taką prędkość ma ta animacja). Jeżeli chcesz by na objektach pozostały tekstury (a nie były one pokrywane próbką jednolitego koloru) w opcji Textures wybierz inną wartość niż None (polecam opcję With File, wtedy wszystko jest zapakowane do jednego pliku - i nic się nie zgubi). Gdy wybierzesz tę opcję - aktywne stanie się pole parametru Maximum Size odpowiedzialnego za maksymalny dopuszczalny rozmiar poszczególnych textur (zalecałbym zwiekszyć tę wartość z domyślnych 128). Jednakże wpływa to znacznie na rozmiar pliku - jeśli plik będzie oglądany lokalnie - nie ma problemu, jeżeli jednak będzie podpięty np: do stronki w HTML-u...
19) Utwórz plik VRMLowy poleceniem File -> Export -> VRML 2. Program poprosi Cię o wskazanie miejsca nagrania i nazwy pliku. Będzie on miał rozszerzenie WRL. 20) W celu obejrzenia uzyskanego pliku-animacji, potrzebna Ci będzie aplikacja czytająca pliki VRML standardu 2 (może być samodzielna, lub np w postaci pluginu do przeglądarki internetowej). Zazwyczaj przeglądarki WWW nie posiadają domyślnie zainstalowanego plug-inu VRML. Trzeba go ściągnąć podobnie jak inne plug-iny np: do czytania plików.rm lub.mov czy.swf. W tym przykładzie korzystam z przeglądarki Safari i plug-inu Cortona. Najpierw Uruchom samą przeglądarkę.
21) Następnie wrzuć plik.wrl w jej okno robocze. 22) Przez chwilę zobaczysz jej ekran powitalny. Następnie pojawi się widok z jednej z kamer. Zwróć uwagę, że jako domyślna zostaje użyta kamera, która w Cinemie w palecie Objects znajdowała się na szczycie hierarchii. 23) Przyciski w grupie pierwszej określają sposób przemieszczania kamery, a w drugiej - sposobu poruszania "wirtualną głowicą statywu" na której jest zamocowana kamera. Pozycje kamer w animacji uznawane są tylko za statyczne lub dynamiczne punkty początkowe do eksploracji przez widza. Możesz swoją wędrówkę po kompozycj VRML rozpocząć zarówno od kamery statycznej jak i ruchomej - jednakże ta druga będzie zawsze wpływała na ruch kadru.
24) Przyciski na poziomej belce służą do: GOTO - pozwala Ci kliknąć w objekt, do którego chcesz przemieścić aktualnie używaną kamerę ALIGN - wypoziomowuje widok przyciski VIEW - przełączają Cię pomiędzy kamerami RESTORE - przywraca początkowe ustawienia kamer FIT - zmieści w oknie przeglądarki całą kompozycję. Przydatne informacje: Niniejszy tutorial pisany jest z myślą o Cinemie4D w wersji 8.5 i przeglądarce/plug-inie VRML-2 Cortona 4.2 używanym łącznie z przeglądarką taką jak np: Firefox 0.10.1, Mozilla 1.7.3 czy Safari 1.2.5. Z tego powodu pominiętych jest wiele możliwości, które mogłyby się pojawić w wypadku użycia nowszego programowania (np: Cinema4D w wersji od 9.2 eksportuje VRML z NURBSami, zaś wersja, którą posiadamy w Studiu jedynie bryły ściankowe - jednocześnie ciągle następuje ewolucja samego VRMLa - ostatnio np: powstała do celów projektu ARCO odmiana o nazwie X-VRML) w związku z tym nie należy oczekiwać, że powyższy tekst wyczerpuje ten temat. Robiąc statyczny czy animowany model i zakładając jako docelowe medium dystrybucji zakładamy użycie VRML-2 warto pamiętać, że przykładowo: - nie zadziała nam PLE (animacja punktów węzłowych bryły) - animacja może mieć FPS wyłącznie w zakresie 5-25 - nie zadziała nam animacja parametrów takich jak np: kąt widzenia kamery - mija się z celem umieszczanie animowanych (materiał wideo) tekstur - nie zapamiętane zostaną zmiany cech tekstury, jej położenia, trybu mapowania, przywiązania do selekcji, itp. - z góry można odpuścić jaką kolwiek wolumetrykę światła - nie uzyskasz żadnych cieni rzutowanych (jedna bryła ocienia drugą) - nie zadziała Target Expression, ani też inne Tagi z grupy Expression (animacja po ścieżce itp). - nie zadziałają też tekstury proceduralne, bump map, alpha,... - wygląd animacji u odbiorcy może różnić się w wyniku zastosowania różnych kart grafiki (np: znacznie gorszą jakość obrazu daje NVIDIA GeForce FX 5200 Ultra w porównaniu z ATI Radeonem 9600 - który za to działa troszke wolniej - co się zauważa dopiero przy naprawdę duuuużych dokumentach). VRML nie jest jednolitym standardem - w takim rozumieniu polecenia VMRL 1 nie stanowią podzbioru VRML 2 czyli nie każda przeglądarka w standardzie 2 otworzy pliki w wersji 1.