5. Animacja keyframe, parametryczna, po ścieŝce, hierarchie aktorów, avi i pdf 3D Przygotowanie Ściągnij plik 5_animacja.dgn, zapisz go w folderze dgn projektu i otwórz go. Z Task List wybierz pozycję Animation. Otwórz równieŝ paletę Rendering. 1. Tworzenie aktora Aktorami nazywamy elementy, dla których tworzony jest scenariusz (skrypt) opisujący ich zachowanie w czasie animacji. Aktorzy w Microstation XM są tworzeni jako Named Group (nazwana grupa elementów) a nie jako cell jak to było w Microstation 2004. Otwórz model drzwi. W widoku izometrycznym włącz tryb Smooth. Zaznacz skrzydło drzwi oraz klamki. Narzędziem Create Actor utwórz z zaznaczonych elementów aktora o nazwie drzwi wg poniŝszych instrukcji: - nazwa aktora: drzwi - orientacja: Design (zgodnie z osiami przestrzeni rysunkowej) - dostępne sposoby modyfikacji (w rozszerzonych opcjach ): pozostaw tylko: Rotate About: Z - jako punkt początku układu aktora wskaŝ zielony punkt połoŝony obok dolnej części drzwi Po utworzeniu aktora zobaczysz na rysunku jego układ współrzędnych (elementy konstrukcyjne). Włącz okno Named Groups (Utilities > Named Groups). Na liście zobaczysz nazwę utworzonego aktora. Zaznacz przy nim opcję Selectable, dzięki temu wskazanie jednego elementu grupy zaznaczać będzie wszystkie elementy. Zamknij okno Named Groups. Włącz okno Animation Producer. W Microstation XM jest to podstawowe narzędzie dostępu do ustawień animacji. W pozycji Actors moŝesz znaleźć utworzonego przed chwilą aktora. Pod prawym przyciskiem myszy znajdują się opcje zmiany nazwy i usunięcia aktora. W dolnej części okna jest miejsce na skrypty animacji, będziemy je tworzyć w dalszej części ćwiczenia. Zamknij okno Animation Producer. 2. Keyframe czyli klatki kluczowe Animacja za pomocą klatek kluczowych polega na określeniu połoŝenia aktora w kluczowych momentach animacji. Program następnie oblicza połoŝenie aktora dla pośrednich momentów animacji tworząc klatki pośrednie. Podczas animacji wykorzystywana jest translacja, obrót i skalowanie aktora. MoŜliwa jest równieŝ interpolacja zmian między dwoma wersjami zmodyfikowanego aktora, dzięki czemu moŝna animować róŝnego rodzaju zniekształcenia. Do tworzenia animacji typu keyframe nie jest konieczne wcześniejsze utworzenie aktora, wystarczy zaznaczyć elementy i utworzyć dla nich keyframe. W tym momencie skorzystamy jednakŝe z przygotowanego wcześniej aktora. a. Utworzenie klatki początkowej Włącz narzędzie Keyframes Dialog. Otworzone zostanie okno Animation Keyframes. Zaznacz aktora drzwi i wciśnij przycisk Create. Wprowadź nazwę klatki kluczowej drzwi-start i opis wg uznania. Zatwierdź OK. b. Manipulowanie aktorem Włącz narzędzie Manipulate Actor (znajduje się w grupie narzędzi dotyczących aktorów). Wybierz z listy aktora drzwi. Włącz opcję Rotate Actor. 1
Wybierz metodę obrotu By Points. Obróć (najlepiej w widoku z góry) drzwi, kąt otwarcia niech będzie większy niŝ 90 stopni. Zgodnie z ustawieniami aktora dostępny dla manipulacji jest tylko obrót wokół osi Z układu aktora, inne obroty nie są moŝliwe do wykonania. c. Utworzenie kolejnej klatki Wróć do okna Animation Keyframes. Wciśnij przycisk Create i wskaŝ aktora. Wprowadź nazwę klatki kluczowej drzwi-otwarte. Zaznacz klatkę drzwi-start i przyciskiem Freeze przywróć zgodne z nią ustawienie aktora. d. Skryptowanie keyframe Skrypty dla klatek kluczowych moŝemy tworzyć w oknie Animation Keyframe lub w oknie Animation Producer. W oknie Animation Keyframe zaznacz klatkę drzwi-start i wciśnij przycisk Script (ten sam efekt będzie miał 2 x klik na nazwie klatki). Otwarte zostanie okno Script Keyframe. Jako Start Time podaj 0. Pozostaw Interpolation: Linear i Velocity: Constant. Zatwierdź OK i zamknij okno Animation Keyframe. Aby dodać skrypt dla drugiej klatki otwórz Animation Producer. Znajdź na liście klatkę drzwi-otwarte i kliknij na niej PrawymPM. Wybierz Script. Jako Start Time podaj 60, Interpolation: Linear, Velocity: Constant. Zwróć uwagę, Ŝe po utworzeniu skrypt pojawia się w dolnej części okna Animation Producer a na wykresie po prawej stronie zaznaczone jest połoŝenie klatek kluczowych (moŝna je tutaj m.in. przesuwać). Dla klatki drzwi-start dodaj jeszcze jeden skrypt: Start Time = 119, pozostałe ustawienia jak poprzednio. Zamknij okno Animation Producer. Skrypty animacji w Microstation XM są przechowywane wewnątrz pliku dgn i są oddzielne dla kaŝdego modelu. W menu File w oknie Animation Producer znajdują się opcje pozwalające operować na skryptach animacji w aktywnym modelu, w tym tworzyć nowe skrypty animacji i importować skrypty msa ze starszych wersji Microstation. 3. Podgląd animacji Włącz narzędzie Animation Preview Tool. Jako aktywny widok wybierz dla niego widok nr 2 (izometryczny). Otwórz okno Animation Settings. Zwróć uwagę, Ŝe załoŝony jest czas trwania 1 klatki jako 1/30 sekundy. Pozostaw to ustawienie. W Range ustal zakres klatek animacji: 00 119 (czyli 120 klatek = 4 sekundy animacji). Odtwórz animację. Włącz jeszcze raz Animation Producer i zmodyfikuj skrypty dla klatek w czasie 60 i 119: ustaw dla nich Velocity: Accelerate-Decelerate. Włącz ponownie podgląd animacji. Teraz otwieranie i zamykanie drzwi jest juŝ płynne. W przypadku animacji na podstawie klatek kluczowych klatki naleŝy rozpatrywać zawsze parami: klatka początkowa i klatka końcowa dla danego fragmentu animacji. Ustawienia interpolacji (Interpolation) i prędkości (Velocity) dla danego fragmentu naleŝy ustawiać w skrypcie dla klatki końcowej. 4. Nagrywanie animacji Nagrywanie animacji polega na zrenderowaniu i zapisaniu kaŝdej klatki animacji w wybranym formacie obrazu rastrowego. 2
Włącz okno nr 5. Narzędziem View Size z palety Rendering ustaw jego rozmiar na 400x300. Włącz tryb Smooth. Wyłącz wyświetlanie elementów konstrukcyjnych i wyświetlanie ACS Triad. Ustaw widok tak aby widoczne były całe drzwi, równieŝ w trakcie otwierania. Włącz narzędzie Record. Domyślna ścieŝka zapisu plików powinna wskazywać folder out w aktywnym projekcie, a pierwszy plik powinien mieć nazwę 5_animacja000.jpg. Wybierz widok nr 5. Rozmiar 400x300. Format: JPEG. Kompresja: Minimum Loss. Render Mode: Smooth. Antialias: Very Low. Record Range: od 0 do 119. Kliknij OK. Zapisanych zostanie 120 klatek (od 0 do 119) animacji w plikach jpeg. Po zakończeniu zamknij okno podglądu renderowanych plików i okno widoku nr 5. 5. Zapisywanie animacji w formacie avi Otwórz narzędzie Movies (Utilities > Image > Movies). Z menu wybierz: File > Load. WskaŜ pierwszy plik z zapisanej sekwencji. Po wczytaniu wszystkich klatek odtwórz je a następnie zapisz jako plik 5_animacja.avi w folderze dgn (File > Save As). Odtwórz plik w domyślnym programie Windows dla plików avi. Zamknij narzędzie Movies. Z folderu out usuń wszystkie pliki. Narzędzie Movies posiada bardzo skromne moŝliwości edycji składanych animacji. Zalecane są do tego inne programy, z darmowych warto tutaj wymienić VirtualDub. 6. Eksport do pliku pdf 3D Włącz jeszcze raz widok nr 5. Z menu Microstation wybierz File > Print. Wybierz sterownik Bentley o nazwie pdf.pltcfg. Wybierz Area: View, View: View 5. Zaznacz opcję Plot to 3D. Włącz Settings > 3D Plotting. Upewnij się, Ŝe zaznaczona jest opcja Convert Animation oraz Place Walk on PDF Toolbar. Wydrukuj model do pliku 5_animacja.pdf w folderze dgn. Otwórz plik pdf - potrzebny będzie do tego program Adobe Reader, najlepiej w jak najnowszej wersji. Odtwórz animację w pliku pdf, przetestuj moŝliwości zmiany wyświetlania warstw, moŝliwości obrotu, przesuwania, zoomowania modelu i pozostałe opcje na pasku 3D w pliku pdf. Ze względu na popularność formatu pliki pdf 3D to bardzo dobry sposób na prezentację modelu 3D. Plik pdf.pltcfg jest sterownikiem wydruku do pdf z graficznym interfejsem konfiguracji (nowość w XM). W oknie wydruku włącz File > Edit Printer Driver Configuration aby zobaczyć ustawienia wydruku do pdf. 7. Animacja parametryczna Otwórz model samochod. W widoku nr 2 (izometrycznym) włącz tryb Smooth. Z kół samochodu (są to pojedyncze elementy typu cell) utwórz 4 aktorów o nazwach od kolo-1 do kolo-4 : - orientacja: Design - włączona jedynie moŝliwość obrotu wokół osi Y - punkty wstawienia: na końcach czerwonych linii (najlepiej widoczne w widoku z góry). Włącz narzędzie Script Actor i dla kaŝdego z aktorów utwórz skrypt animacji. Po wybraniu aktora z listy wprowadź Start Time = 0, End Time = 200, Y Rotation = 10*frame. Zatwierdź OK. To samo powtórz dla wszystkich aktorów. Formuła 10*frame oznacza, Ŝe dla danej klatki animacji obrót aktora względem osi Y będzie wynosił w stopniach pomnoŝoną przez 10 wartość numeru klatki (czyli od 0 do 10*200 stopni). Zmienna frame oznacza numer klatki animacji, inną często wykorzystywaną zmienną jest tseconds oznaczająca czas animacji w sekundach. Opis innych zmiennych dostępnych podczas tworzenia animacji moŝesz znaleźć w Microstation Help pod hasłem Parametric Motion Control. 3
Włącz podgląd animacji i sprawdź czy wszystkie elementy są poprawnie animowane. Utwórz aktora samochod z wszystkich pozostałych elementów samochodu: - narzędziem Element Selection zaznacz cały samochód - w rozszerzonych opcjach Element Selection wyłącz zaznaczenie elementów klasy Construction (obie pozycje występujące na liście pozycja szara to układ aktora element typu cell) - wyłącz zaznaczenie kół wskazując je na rysunku (trzymając klawisz Ctrl) - utwórz aktora samochod : - orientacja: Design - pozostaw jedynie moŝliwość przesuwania względem osi X (Move Along: X) - punkt wstawienia wskaŝ w miejscu zielonej kropki w centrum samochodu Narzędziem Script Actor utwórz skrypt dla aktora samochod. Zakres: 0 200. W pozycji X Position podaj: 0.1*frame. Włącz podgląd animacji. Jak widać aktorzy poruszają się niezaleŝnie od siebie. 8. Hierarchie aktorów Aby połączyć aktorów zgodnie z przyjętą przez siebie hierarchią moŝna uŝyć narzędzia Attach Actor lub skorzystać z moŝliwość okna Animation Producer. Skorzystaj z tej drugiej metody. Włącz Animation Producer. Znajdź utworzonych aktorów. Metodą przeciągnij i upuść dołącz aktorów od kolo-1 do kolo-4 do aktora samochod. Włącz podgląd animacji. Ruch aktorów powinien być teraz zgodny. 9. Ruch po ścieŝce Skopiuj model samochod jako samochod-sciezka. Włącz Animation Producer i zobacz, Ŝe w nowym modelu pozostali aktorzy z modelu źródłowego ale brak jest skryptów. Narzędziem Script Actor utwórz takie same jak w poprzednim modelu skrypty dla aktorów od kolo-1 do kolo-4 (zakres: 0 200, Y Rotation=10*frame). Dla aktora samochod nie twórz na razie skryptu. Usuń powierzchnię na której stoi samochód. Narzędziem Insert Vertex z palety Modify dodaj do końca linii wychodzącej spod samochodu nowy wierzchołek tak, aby kąt między segmentami linii wynosił 130 stopni, a nowy segment miał 40 jednostek długości: Narzędziem Construct Circular Fillet Radius: 30, Truncate: Both. z palety Modify zaokrąglij połączenie 2 segmentów linii: Powstałe 3 niezaleŝne elementy połącz Narzędziem Create Complex Chain za palety Groups. Zmień klasę powstałego Complex Chain na Construction (np. w oknie Element Information ). Przełącz chwilowo Task List na Surface Modeling. Narzędziem Extrude Along Path rozciągnij poprzeczną linię wzdłuŝ utworzonej ścieŝki Complex Chain. Type: Surface, Attachment: Profile to Path. WskaŜ ścieŝkę a następnie środek poprzecznej linii. W Task List wróć do Animation. 4
Zmień kolor utworzonej powierzchni na kolor nr 100 i ustaw jej klasę na Primary. Uruchom narzędzie Define Actor Path. Wybierz aktora samochod. WskaŜ ścieŝkę Complex Chain klikając w jej część połoŝoną bliŝej samochodu. Zatwierdź wybór (nawet jeśli podświetlony został tylko fragment a nie cała ścieŝka Complex Chain). W otwartym oknie zdefiniuj początek i koniec (0 200) i prędkość (Accelerate Decelerate). Zwróć uwagę na pozostałe opcje ale pozostaw je domyślne. Zatwierdź OK. Włącz podgląd animacji. Aktor samochod, wraz z wszystkimi dołączonymi do niego aktorami powinien poruszać się wzdłuŝ ścieŝki zmieniając swoją orientację wraz ze zmianą kierunku ścieŝki. Pytania i zadania: 1. Jakie 3 opcje orientacji układu aktora są dostępne podczas jego tworzenia narzędziem Create Actor? Co oznacza kaŝda z tych opcji? 2. Jakie są 3 sposoby manipulacji aktorem? 3. O przebiegu animacji między dwiema klatkami kluczowymi decydują ustawienia klatki początkowej czy klatki końcowej? 4. W Animation Producer wybierz View > Velocity Graph i zaznacz aktora samochod. Co obrazuje wyświetlona na wykresie po prawej stronie krzywa? Zmień ustawienie prędkości dla pozycji Path (ruch po ścieŝce) testując po kolei wszystkie ustawienia i patrząc jak zmienia się przebieg krzywej. Przy ustawieniu Custom wybierz narzędzie Move Points i spróbuj zmienić przebieg krzywej ręcznie. Na końcu przywróć ustawienie początkowe. 5. W modelu samochod-sciezka otwórz okno Material Editor i otwórz standardową paletę Concrete. Do podłoŝa ma którym stoi samochód dołącz (Attach) materiał Asphalt (Grey). Nagraj animację w trybie Phong, w rozmiarze 400x300, do plików jpeg. Wczytaj ją narzędziem Movies i zapisz jako plik 5_animacja_sam.avi. Usuń pliki z folderu out. 6. W modelu samochod-sciezka otwórz Animation Producer. Otwórz skrypt Path. Włącz opcję Path Distance i wprowadź: 0.2*frame. Aktor teraz będzie poruszał się z prędkością 0.2 jednostek na klatkę. Wpisz formułę dzięki której będzie poruszał się z prędkością 8 jednostek na sekundę (podpowiedź: skorzystaj ze zmiennej tseconds). Włącz Settings > Design File i w pozycji Working Units upewnij się, Ŝe jednostkami głównymi (Master Units) w otwartym pliku są metry. Wprowadź w skrypcie Path taką formułę, aby samochód poruszał się z prędkością 40km/h (podpowiedź: naleŝy skorzystać ze zmiennej tseconds i odpowiedniego przelicznika). 7. Otwórz model zegar. Przygotuj animację zegara. Dla wskazówek zastosuj parametryczną kontrolę ruchu, dla wahadła zastosuj keyframes. Inne ustawienia według własnego uznania. 8. W modelu zegar zamień animację wahadła z keyframe na parametryczną (wykorzystaj funkcje trygonometryczne). 5